Via Vagrant / Puppet
Bei der vorletzten PHPUG Rheinhessen hatte ich bereits eine automatische Magento Installation über Vagrant und Puppet vorgestellt. Damit ist es möglich eine komplette Virtuelle Maschine mit Magento innerhalb von Minuten hochzuziehen.
Das ist super, wenn man mal eben ein wirklich leeres System benötigt. Das ganze ist keine Hexerei, denn Magento bietet über die install.php schon die Möglichkeit ohne den Aufruf der Oberfläche eine Installation von der Kommandozeile aus durchzuführen.
Wer interesse hat schaut einfach unter https://github.com/cmuench/Magento-Vagrant-Puppet nach und klont sich die Puppet Module inklusive der Vagrant Datei.
MageSpawner / Magento-Phing-Installer
Letzte Woche veröffentlichte dann Matthias Zeis seinen MageSpawner. Der MageSpawner ist ein Shell Script, welches ebenfalls auf die gleiche Weise Magento installiert. In seinem Blog-Beitrag schlug Matthias vor, dass jemand ebenso sein Shell Script in ein Build-Script umbauen könnte. Da ich dies bereits vor einiger Zeit selbst vor hatte, habe ich dies nun wirklich gemacht.
Das Ergebnis kann man unter https://github.com/netz98/Phing-Magento-Installer begutachten.
Das Script setzt folgende Dinge vorraus:
- Linux / MacOS (nicht ausprobiert)
- wget
- sed
- MySQL-Client-Tools
- tar (zum entpacken)
- phing
Phing kann unter über Pear schnell installiert werden.
Der Installert ist in der build.xml Datei komplett enthalten. Um das Script anzuwerfen muss vorher die mitgelieferte build.properties.sample Datei in build.properties umbenannt werden. In der Property-Datei müssen dann die entsprechenden Konfigurationen wie z.B. Pfade des eigenen Systems oder die Datenbank-Zugangsdaten angepasst werden.
Danach kann es auch schon losgehen.
Das Script hat zwei wichtige Targets.
- install
- uninstall
Der Aufruf ist dann folgendermaßen:phing -f build.xml install
und phing -f build.xml uninstall
Das Script arbeitet analog zu Matthias Zeis Script und man gibt auch hier nur den ersten Teil der in der Konfiguration definierten Basis-Domäne an.
Wenn der Shop unter foo.magento.local angelegt werden soll, dann muss in der Konfiguration der folgende Eintrag existieren:
mage.domain = magento.local
Danach startet man die Installation. Bei der Frage nach dem “Shop Name” gibt man dann nur noch “foo” ein. Nach dem Auswählen des Zielsystems wird dann Magent vollautomatisiert installiert.
Wie geht es weiter? Folgende Dinge sollen noch in Zukunft in das Script…
- Sample Data Installation
- Magento Enterprise Edition Support