Drupal + git: Development | Repo | Stage | Production; Deployment?
Eingetragen von quiptime (4972)
am 02.09.2009 - 12:53 Uhr in
am 02.09.2009 - 12:53 Uhr in
An die Versionierungs-Spezies.
Welche Methoden und Vorgehensweisen verwendet Ihr bei der Arbeit mit git um bei einem Szenario wie
Development | Repository | Stage | Production
eine Drupalsite zu deployen?
Insbesondere der Aspekt der Datenbank ist mir nicht so wirklich klar.
- Anmelden oder Registrieren um Kommentare zu schreiben
Management
am 02.09.2009 - 15:57 Uhr
Moin.
Ich kann mal mein Vorgehen mit SVN kurz anreissen (und möglicherweise am Freitag oder Samstag mal mehr nach der Session über deployment erzählen).
Wir haben einen Staging-Server mit einem SVN-Repo. Dort wurde eine frische Drupal-Installation abgelegt und dann halt von jedem Entwickler ausgescheckt. Nachdem Änderungen gemacht wurden, werden diese per (eigens dafür erstelltem) Skript (auf dem Live-Server) vom Staging-Server auf den Live-Server geholt.
Datenbank-Änderungen (also Änderungen an der Konfiguration) werden grösstenteils per Hand auf den Staging/Live-Server übernommen, da gibt es also nicht wirklich eine skriptgesteuerte Lösung. Views werden einfach auf dem Staging-Server (oder aus der Entwicklungsumgebung) exportiert, auf dem Live-/Staging-Server gelöscht und dann wieder importiert. So spart man sich die kleinen Änderungen.
Ab und zu wird dann noch die Live-DB auf den Staging-Server gespielt, so dass man dort auch die Daten des Live-Systems hat.
Höchstwahrscheinlich gibt es dafür wesentlich elegantere Wege (von denen ich dann hoffentlich nach den Freitags-Sessions erzählen kann).
Stefan
--
sei nett zu Deinem Themer
Tipp: Beachte die Verhaltensregeln des DrupalCenter.
Wie Stefan inzwischen
am 10.10.2009 - 14:30 Uhr
Wie Stefan inzwischen erfahren durfte kann man Views Panels, Inhaltstypen, Einstellungen über variable_set, alles was Ctools exportables implementiert mit Features exportieren.
Dafür packt man die Webseite in einzelne Feature-Packete, z.B. im Drupalcenter Forum, Showroom, News, Handbuch packen und dort die obigen Einstellungen exportieren.
Macht man nun ein Update der Dateien auf Live, leert man den Cache, dann werden die Inhaltstypen aktualisiert,
die Views/Panels/Ctools Exportables werden sowieso aus den Dateien geholt und fertig.
Damit ist eigentlich in der Theorie alles auf der Einstellungsebene gebaut.
PS: In der Freitagssession wurde einfach nur erklärt, dass man alles in update-Skripten schreiben sollte, auch statische Inhalte der Webseite
--------------
Blog www.freeblogger.org: Deutscher IRC-Channel: irc.freenode.net #drupal.de ... Jabber-me: dwehner@im.calug.de
SirFiChi ist auch dein Halbgott.
Also war die Pariser
am 10.10.2009 - 15:19 Uhr
Also war die Pariser Deployment Session nicht wirklich der Bringer?
Ich sehe grad noch keinen Weg in Deiner Antwort mit "alles mit Features exportieren". Kannst Du das bitte etwas genauer ausfuehren.
------------------------
Quiptime Group
Da geht noch was.
Mit Features meine ich das
am 10.10.2009 - 17:31 Uhr
Mit Features meine ich das Feature Modul.
Man kann z.B. sagen ich möchte den Inhaltstyp Showroom + View + Permissions + Settings zu einem Modul(Feature) zusammenpacken, als bsp. http://gitorious.org/drupalcenter/drupalcenter/trees/master/sites/all/mo...
Damit kann man dann Veränderungen an den entsprechenden Einstellungen mitverfolgen und in Code packen. Auf dem Livesystem macht man dann ein
$git pull && drush cache clear && drush updatedb
--------------
Blog www.freeblogger.org: Deutscher IRC-Channel: irc.freenode.net #drupal.de ... Jabber-me: dwehner@im.calug.de
SirFiChi ist auch dein Halbgott.
Moving content from Staging to Live
am 24.10.2009 - 17:38 Uhr
Kleiner Bookmark: Moving content from Staging to Live
------------------------
Quiptime Group
Da geht noch was.