Install OpenOrchestra with vagrant¶
Open Orchestra is composed of three projects : open-orchestra which is the CMS Back Office and open-orchestra-front-demo which is the Front Office part that will display the sites and pages created in the CMS Back Office and open-orchestra-media-demo which will display the images loaded in the CMS Back Office.
For developers, we provide a Vagrant-powered environment with provisioning so you get minimal setup actions to do.
Install Vagrant¶
The project is running on a Vagrant virtual environment built on VirtualBox to be production ready. For more information about Vagrant installation, you can see ` Vagrant installation documentation <https://www.vagrantup.com/docs/>`
Install ansible¶
All the project server configuration is going to be handled by ansible.
Our configuration was made for the 1.9.4 version of ansible. It doesn’t work with the version 2 of ansible.
For more information about ansible installation, you can see Ansible installation documentation.
If you need tar.gz archives, you can see this link : https://releases.ansible.com/ansible/
Install nfs server¶
To improve the vagrant box performance, we share the folders with the nfs
protocol. You need to
install a nfs server instance on your computer.
$ aptitude install nfs-kernel-server
Download Composer¶
Composer is the package manager used by modern PHP applications.
To install composer with curl:
$ curl -sS https://getcomposer.org/installer | php
If you don’t have curl installed, you can also download it with php:
$ php -r "readfile('https://getcomposer.org/installer');" | php
Install OpenOrchestra¶
Install the different open-orchestra part using composer
:
$ ./composer.phar create-project open-orchestra/open-orchestra ./open-orchestra -s stable --ignore-platform-reqs --no-scripts 1.1.x
$ ./composer.phar create-project open-orchestra/open-orchestra-front-demo ./open-orchestra-front-demo -s stable --ignore-platform-reqs --no-scripts 1.1.x
$ ./composer.phar create-project open-orchestra/open-orchestra-media-demo ./open-orchestra-media-demo -s stable --ignore-platform-reqs --no-scripts 1.1.x
Clone the provisioning repository in another folder :
$ git clone https://github.com/open-orchestra/open-orchestra-provision.git --branch=1.1
Install roles from ansible-galaxy¶
Go into open-orchestra-provisioning
directory and install roles needed to launch the box:
$ ansible-galaxy install --role-file=galaxy.yml
Override the dns redirection¶
In the /etc/hosts
file of your computer add the following lines :
192.168.33.10 admin.openorchestra.1-1.dev
192.168.33.10 demo.openorchestra.1-1.dev
192.168.33.10 media.openorchestra.1-1.dev
Launch the box¶
In the open-orchestra
directory, when you launch the box, it will take some time to :
- Import the base box
- Launch it
- Run all the provisioning scripts
$ vagrant up
Install the assets¶
We are using npm to manage some server side javascript libraries and bower to manage the client side libraries
Connect to the vagrant box using vagrant ssh
Finalise the composer
installation in each project
$ cd /var/www/openorchestra && composer run-script post-install-cmd
$ cd /var/www/front-openorchestra && composer run-script post-install-cmd
$ cd /var/www/media-openorchestra && composer run-script post-install-cmd
Then go in the Back Office project directory inside the box
$ cd /var/www/openorchestra
Launch the grunt command to generate all assets
$ ./bin/grunt
Load the fixtures¶
In the symfony project directory /var/www/openorchestra
you can load the fixtures provided :
$ php app/console orchestra:mongodb:fixtures:load --type=production --env=prod
Now you can log on http://admin.openorchestra.1-1.dev/login with username=admin and password=admin for the CMS and see the result on http://demo.openorchestra.1-1.dev.
All the images will be visible on the http://media.openorchestra.1-1.dev url.