Contao mit Ansible verwalten - Teil 6

von Kirsten Roschanski

Install vom Contao Theme OPTIMIST

Was bisher passiert ist.

Um den Code wiederverwendbar zu machen, habe ich diesen nun in eine Rolle gepackt und in den Playbooks eingebunden.

Zudem habe ich die Sicherheit durch setzen der Secrets erhöht und auch weitere Parameter hinzugefügt sowie den Suffix bei den Seiten entfernt.

Alle Änderungen sind auch auf github nachzulesen.

Information

Da es für das Theme nur die SQL-Dateien für Contao 4.9 und Contao 4.10 gibt, können auch nur diese beiden Versionen voll automatisch installiert werden. Wer eh die SQL nicht importieren möchte, kann natürlich auch den Teil entfernen.

Oder man macht hinterher ein Upgrade.

Was macht nun das Ansible-Playbook?

  1. Er installiert den Contao-Manager und richtet diesen ein. Hierfür wird der Task aus der Rolle genutzt.
  2. Es wird Contao und die Module installiert und richtet diesen ein. Hierfür wird ebenfalls der Task aus der Rolle genutzt.
  3. Es wird das aktuelle Paket des Themes von github geholt und installiert.
  4. Die mitgelieferte Datenbankdaten werden importiert.
  5. Die Symlinks werden noch mal nachgezogen.
  6. Der Cache wird geleert und wieder aufgeärmt.
  7. Die Contao-Installation wird in den Wartungsmodus versetzt.

Wo finde ich das Playbook?

Das Playbook ist auf github und kann dort mit allen Abhängigkeiten heruntergeladen werden.

Wie führe ich das nun aus?

Wenn ich die Installation nun aufsetzen möchte, dann nutze ich folgenden Befehl:

ansible-playbook -i customers/optimist.yml install_optimist.yml

dieses kann ich nur machen, da mein SSH-Key auf dem Server hinterlegt ist. Wenn ich das Passwort eingeben muss, dann rufe ich das mit der Option -k auf:

ansible-playbook -i customers/optimist.yml -k install_optimist.yml

Ein kleiner Versuch, es als Video zu präsentieren.

Wie geht es weiter?

Ich bin noch immer bei das Projekt weiter zu optimieren. Sobald ich einen wirklich guten Weg für mich habe, werde ich diesen ganz sicher hier auch mitteilen. Ansonsten sollen noch ein paar kleine Optimierungen folgen, ob diese nur auf github erscheinen oder auch hier, da bin ich noch ein wenig unsicher.