Deployment mit Deployer
Teil 3 unserer Serie zum Projekt-Workflow — vorher: GitLab für Projektmanagement und Entwicklung.
Da wir lokal entwickeln, müssen wir den aktuellen Stand irgendwann (halb-)öffentlich machen, damit unsere Partner-Agenturen und deren Kund:innen sich den Fortschritt des Projekts ansehen können. Dafür nutzen wir Deployer, um den Entwicklungsstand auf einer Stage und später Änderungen auf der Live-Umgebung zu veröffentlichen.
Dank Deployer und der Ersteinrichtung des Servers ist die Veröffentlichung von Änderungen denkbar einfach: Der Befehl dep deploy genügt, und schon ist der neueste Stand der Entwicklung sichtbar — zumindest alle Änderungen auf Datei-Basis (dazu unten mehr).
Contao-Recipes
Um Deployer und Contao zu verheiraten, hat Richard mehrere Recipes für Deployer eingereicht, mit denen sich unterschiedliche Contao-Befehle über die Kommandozeile ausführen lassen. Dazu gehört zum Beispiel contao:migrate, mit dem die Datenbank nach einem Update aktualisiert wird — also etwa neue Datenbank-Tabellen und -Felder nach der Installation einer Erweiterung ergänzt werden.
Die Dokumentation, um Deployer mit Contao zu nutzen, findest du hier: docs.contao.org/manual/de/guides/deployer
Außerdem hat Richard weitere Recipes für das Nutshell Framework entwickelt, die zusätzliche Funktionen enthalten. Mit den Nutshell-Recipes lassen sich z. B. Dateien aus dem files-Ordner herunterladen oder ein Datenbank-Abgleich durchführen. Eine kurze Einführung dazu gibt es hier: github.com/nutshell-framework/deployer-recipes
Der Haken
Die Sache hat eigentlich nur einen Haken: Änderungen, die wir in Contao machen müssen und die in der Datenbank gespeichert werden, lassen sich nicht reibungslos hin und her synchronisieren. Wie wir damit umgehen, liest du in Teil 4: Teamarbeit und Datenbank-Synchronisation.