Hier werden alle Schritte notiert, die dazu führen, dass Projektumgebungen automatisiert hochgefahren und eingerichtet werden können.
- VirtualBox: https://www.virtualbox.org/wiki/Downloads
- VirtualBox Extension Pack (auch unter der obigen Url auffindbar)via
VirtualBox->File->Preferences->Extensions
hinzufügen - Vagrant: http://downloads.vagrantup.com
- vagrant-vbguest plugin für Vagrant per
vagrant plugin install vagrant-vbguest
installieren (hält die guest additions aktuell) git
undssh
installieren und einrichtenGIT_*
Environment-Variablen einrichten in~/.bashrc
:
PATH=\$PATH:/opt/vagrant/bin
export GIT_AUTHOR_NAME=“User Name”
export GIT_AUTHOR_EMAIL=“[email protected]”
export GIT_COMMITTER_NAME=“$GIT_AUTHOR_NAME”
export GIT_COMMITTER_EMAIL=“$GIT_AUTHOR_EMAIL”
- SSH-Forwarding der GIT-Umgebungsvariablen aktivieren (~/.ssh/config)
SendEnv GIT_*
- Repository klonen via
git clone github.com:berlinonline/demo-vouchers.git
- Anschließend die Git-Submodules aktualisieren/initialisieren:
cd demo-vouchers && git submodule update --init --recursive
Nun sollte man eine lokale Kopie des Projekt-Repositories besitzen, in der alle Applikationen und die Entwicklungsumgebungen zu finden sind.
Zur Zeit sind für das Demo-Vouchers-Projekt zwei Applikationen vorgesehen:
- CMS und
- Frontend
Die Entwicklung an den Applikationen findet in Vagrant-Boxen statt. Entsprechende Boxen liegen bereits im Repository und werden wie in den folgenden Schritte beschrieben eingerichtet.
Backend und Frontendbox booten:
cd demo-vouchers/development/project/boxes/demo-vouchers
vagrant up
vagrant ssh cms
./init_cms.sh
- PHP-Pfad: mit Enter bestätigen
- Project-Base-URL:
http://demo-vouchers-cms.local/
- Environment:
development-vagrant
cd projects/demo-vouchers-fe/applications/cms/honeybee
make
gibt eine Liste der im cms zur Verfügung stehenden make targets
vagrant ssh fe
./init_fe.sh
- PHP-Pfad: mit Enter bestätigen
- Project-Base-URL:
http://demo-vouchers-fe.local/
- Environment:
development-vagrant
cd projects/demo-vouchers-fe/applications/fe/pulq
make db
-> Name der Datenbank ist defaultmake
gibt eine Liste der im frontend zur Verfügung stehenden make targets
TIP: Nach dem initialen vagrant up
lassen sich die Vagrant-Boxen mit vagrant suspend
und vagrant resume
schneller stoppen und wieder starten als mit vagrant halt
und vagrant up
.
Backend:
mount 33.33.33.10:/home/vagrant/projects/demo-vouchers-cms/applications/fe ~/projects/demo-vouchers-cms
Frontend:
mount 33.33.33.10:/home/vagrant/projects/demo-vouchers-fe/applications/fe ~/projects/demo-vouchers-fe