Ergebnis 1 bis 11 von 11

Thema: Migration Database files

  1. #1
    Contao-Nutzer
    Registriert seit
    18.03.2018.
    Beiträge
    25

    Standard Migration Database files

    Ich komme aus der Laravel / Symfony Welt. Ich frage mich aktuell, wie ein sauberes Deployment mit Contao funktioniert ggf. mit integrierten CI usw.
    Ist so etwas überhaupt sauber mit Contao möglich?

    Das man hier bspw. die Migration Files für die Datenbank Struktur hat, deployen kann aus seinem Git Repo oder woher auch immer und dann die Migrations durchlaufen/updaten lassen kann?
    Sodass man praktisch relativ einfach seine lokale Installation und Live Seite synchron halten kann?

    Oder gibt es da was die Datenbank anbelangt noch keinerlei "vernünftige" Lösung?
    Denn dazu konnte ich leider bisher nichts finden.

    Wie geht Ihr beim Deployment vor? Mal von den absoluten alten unflexiblen und zeitraubenden Wegen abgesehen wie: FTP hochladen, mysql dumpen, wieder manuell einspielen usw.
    Geändert von christiantrade (12.02.2019 um 14:16 Uhr)

  2. #2
    Administrator Avatar von xchs
    Registriert seit
    19.06.2009.
    Beiträge
    14.557
    User beschenken
    Wunschliste
    Contao-Projekt unterstützen

    Support Contao

    Standard

    Kennst Du das Magallanes Deployment Tool? Es gibt dafür auch einige Tasks für das Deployment einer Contao Applikation: https://github.com/terminal42/mage-tools
    Contao Community Administrator

    [Unterstützungsmöglichkeiten]

  3. #3
    Contao-Nutzer
    Registriert seit
    18.03.2018.
    Beiträge
    25

    Standard

    Zitat Zitat von xchs Beitrag anzeigen
    Kennst Du das Magallanes Deployment Tool? Es gibt dafür auch einige Tasks für das Deployment einer Contao Applikation: https://github.com/terminal42/mage-tools
    Noch nicht
    Die Seite scheint aber offline zu sein. Du meinst magephp.com?

    Aber dann kann ich davon ausgehen, dass es prinzipiell so etwas bei Contao nicht direkt gibt?

    Ich würde dann selbst auch überlegen hier evtl. https://deployer.org/ zu nutzen.
    Und dann praktisch noch die Datenbank bei jedem Deployment zu dumpen und wieder neu einzuspielen, sodass man immer den aktuellsten Stand der Datenbank hat.
    So könnte man sich sicherlich auch ein sauberes flottes Deployment bauen.

    Ist halt nur ein wenig doof ohne Migration Files etc.
    Da hat man ratz fatz nen riesen Git Repo mit den DB Files. Ich denke die sollte man eh eher auslagern auf irgendeinen Speicher wie S3 oder ähnl. Muss ich mal schauen.

    Macht Ihr es mit obiger Methode von Magallanes?
    Magallanes schaue ich mir definitiv auch noch an, sobald die Seite wieder erreichbar ist.

  4. #4
    Community-Moderatorin & Contao-Urgestein Avatar von mlweb
    Registriert seit
    10.07.2011.
    Beiträge
    6.742
    Contao-Projekt unterstützen

    Support Contao

    Standard

    Dürfte jetzt hier zu finden sein.

    https://magephp.github.io/
    Ich habe Dir mit meinen Hinweisen geholfen und Du möchtest Dich bedanken?
    Unterstütze bitte das Contao-Projekt (Button Links)
    Weitere Spendenmöglichkeiten
    ------------------------------------------------------------------------------------------------------
    Contao-Dokumentation: Contao-Handbuch und Contao-Entwickler-Doku
    Contao-Online-Video-Kurse: Contao Academy
    Funktionalität erweitern: Contao-Erweiterungen

    Für Dinge die man mit html5 und css3 lösen kann, braucht man kein javascript.




  5. #5
    Community-Moderator
    Wandelndes Contao-Lexikon
    Avatar von Spooky
    Registriert seit
    12.04.2012.
    Ort
    Scotland
    Beiträge
    34.063
    Partner-ID
    10107

    Standard

    Das ist noch die alte Version. Die Entwicklung der neuen Version scheint vor einiger Zeit ins Stocken geraten zu sein. Und dass die Website nun down ist, ist auch kein gutes Zeichen :/

  6. #6
    Contao-Fan Avatar von PaddySD
    Registriert seit
    26.10.2016.
    Ort
    Andechs
    Beiträge
    656

    Standard

    Ich bin mir sicher, dass es hier vor gut einem Jahr einen Thread gab, da hat das jemand mittels Gitlab/Github und Webhooks recht sauber gelöst. Ich finde den Thread aber leider nicht mehr.

  7. #7
    Contao-Nutzer
    Registriert seit
    18.03.2018.
    Beiträge
    25

    Standard

    Zitat Zitat von Spooky Beitrag anzeigen
    Das ist noch die alte Version. Die Entwicklung der neuen Version scheint vor einiger Zeit ins Stocken geraten zu sein. Und dass die Website nun down ist, ist auch kein gutes Zeichen :/
    Ja scheint eine alte Version zu sein, der letzte commit war vor drei Jahren.
    Evtl. könnte man sich dann tatsächlich einmal ein Deployment bauen mittels https://deployer.org

    Ich schaue mir das ganze mal an.

  8. #8
    Administrator Avatar von xchs
    Registriert seit
    19.06.2009.
    Beiträge
    14.557
    User beschenken
    Wunschliste
    Contao-Projekt unterstützen

    Support Contao

    Standard

    Zitat Zitat von christiantrade Beitrag anzeigen
    Ich würde dann selbst auch überlegen hier evtl. https://deployer.org/ zu nutzen.
    Es gibt dazu auf GitHub auch eine eigene Contao Deployer Edition: https://github.com/contao/deployer-edition

    Inwiefern die aber momentan auf dem aktuellen Stand ist, weiß ich nicht (die letzten Commits sind vor knapp einem Jahr).
    Contao Community Administrator

    [Unterstützungsmöglichkeiten]

  9. #9
    Contao-Nutzer
    Registriert seit
    18.03.2018.
    Beiträge
    25

    Standard

    Zitat Zitat von xchs Beitrag anzeigen
    Es gibt dazu auf GitHub auch eine eigene Contao Deployer Edition: https://github.com/contao/deployer-edition

    Inwiefern die aber momentan auf dem aktuellen Stand ist, weiß ich nicht (die letzten Commits sind vor knapp einem Jahr).
    Oh cool, schaue ich mir auch einmal an.

  10. #10
    Administrator Avatar von xchs
    Registriert seit
    19.06.2009.
    Beiträge
    14.557
    User beschenken
    Wunschliste
    Contao-Projekt unterstützen

    Support Contao

    Standard

    Hier noch einige Infos von Leo vom Contao Agenturtag: https://www.contao-agenturtag.de/cat18/#20
    Contao Community Administrator

    [Unterstützungsmöglichkeiten]

  11. #11
    Contao-Fan
    Registriert seit
    27.06.2010.
    Beiträge
    539

    Standard

    Ich deploye per CI.

    So sieht meine GitLab CI Konfig aus:
    https://github.com/richardhj/contao-....gitlab-ci.yml

    Diese deckt das einfachste Szenario aus:
    Tag auf master branch -> Production Instanz wird upgedated.

    Dazu wird sich per SSH auf den Live-Server verbunden, dann das u.a. der neue Git Hash ausgecheckt.

    Hier noch ein paar Erläuterungen zum Skript der o.g. Konfiguration:

    cd /home/www/example.org : Wechselt in das Root-Verzeichnis der Contao/Symfony App
    && php vendor/bin/contao-console lexik:maintenance:lock --no-interaction --env=prod : Aktiviert den Wartungsmodus
    && git fetch && git checkout $CI_COMMIT_SHA : Checkt den Commit aus, der getaggt wurde
    && /usr/bin/php7.2 composer.phar install -o -n --no-dev --no-progress --prefer-dist : Installiert composer-Abhängigkeiten
    && php vendor/bin/contao-console contao:database:update : Stellt sicher, dass die Datenbank aktuell ist. Erfordert "fuzzyma/contao-database-commands-bundle" in deiner composer.json
    && php vendor/bin/contao-console lexik:maintenance:unlock --no-interaction --env=prod : Stellt den Wartungsmodus aus
    && php vendor/bin/contao-console contao:version : gibt nur die aktuelle Contao-Version aus, um sicherzustellen, das alles funktioniert hat

    Konfiguration mit mehreren Staging-Umgebung (git branches) ist denkbar.
    Durchlaufen von Unit/Functional tests vor dem Deployment ist denkbar.

    Da du explizit nach der Migration der Datenbank gefragt hast:
    Der Befehl "php vendor/bin/contao-console contao:database:update" sorgt nur dafür, dass die DB-Struktur atkuell ist. Eine Migration von Daten ist mir leider nicht bekannt. Sicherlich gibt es die Doctrine Migrations, ich glaube aber, dass die nicht eingebunden werden können (auch wenn ich doctrine/migrations schonmal im Contao-Kontext aufgeschnappt habe).

    EDIT:
    ansonsten findest du im oben verlinkten Repo auch im dotgit/ Verzeichnis einen recht praktischen mysqldump-Befehl.
    Geändert von tl_richard_user (12.02.2019 um 21:39 Uhr)

Aktive Benutzer

Aktive Benutzer

Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)

Lesezeichen

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •