Hallo Team,
viele von euch arbeiten als Software-Entwickler. Daher würde mich mal interessieren wie bei euch der Releaseprozess abläuft.
Bei uns läuft das in etwa so:
Auf unseren Entwicklungsserver1 läuft auch ein Cron der trunk alle 5 Minuten aktualisiert.
Das ist ganz praktisch, wenn man seine lokalen Änderungen nochmal mit dem aktuellen trunk abgleichen will oder anderen schlichtweg was präsentieren muss.
Wenn einmal in der Woche Release Day ist, wird der Code der Branch aktualisiert.
Wir machen hierzu übrigens ein einfaches svn remove branch/0.1 && svn copy trunk branch/0.1 - das mergen bereit manchmal Probleme
Auf Entwicklungsserver2 wird dann der Cron gestartet um alle 5 Minuten aus branch zu aktualisieren.
Ein Teil der Entwickler testet - ein Teil der Entwickler arbeitet weiter an neuen Features.
Werden nun Fehler gefunden wird nutzen Entwickler den trunk um Korrekturen vorzunehmen.
Die Releaseverantwortlichen können dann einzelne Korrekturen in die branch übernehmen.
Wenn alles stable ist wird die Version getaggt und auf den Produktionsmaschinen wird aus der branch geupdatet.
Erweiterungen zum svn update:
Einmal dürfen natürlich keine Konfigurationsdateien eingecheckt werden - die Zugangdsaten der Produktionsmaschinen bleiben geheim. Daher gibt es ein Konfigurationsscript.
a) das konfigurationstemplate wird geparst und versucht zu befüllen - wenn Variablen fehlen wird abgebrochen
b) sind datenbankverbindungen angegeben werden tests durchgeführt.
c) datenbankänderungen die auch in der verzeichnisstruktur liegen werden ausgeführt (falls gekennzeichnet als pre-update)
d) fileupdates ausführen
e) datenbankänderungen (post-update)
Ich dachte mir, dass jede Softwarefirma vor so einem Problem steht - kennt ihr eine Software wie das angesprochene "Konfigurationsscript" ?
Wie läuft das bei euch ab? Wie sollte es ablaufen?
viele von euch arbeiten als Software-Entwickler. Daher würde mich mal interessieren wie bei euch der Releaseprozess abläuft.
Bei uns läuft das in etwa so:
Auf unseren Entwicklungsserver1 läuft auch ein Cron der trunk alle 5 Minuten aktualisiert.
Das ist ganz praktisch, wenn man seine lokalen Änderungen nochmal mit dem aktuellen trunk abgleichen will oder anderen schlichtweg was präsentieren muss.
Wenn einmal in der Woche Release Day ist, wird der Code der Branch aktualisiert.
Wir machen hierzu übrigens ein einfaches svn remove branch/0.1 && svn copy trunk branch/0.1 - das mergen bereit manchmal Probleme

Auf Entwicklungsserver2 wird dann der Cron gestartet um alle 5 Minuten aus branch zu aktualisieren.
Ein Teil der Entwickler testet - ein Teil der Entwickler arbeitet weiter an neuen Features.
Werden nun Fehler gefunden wird nutzen Entwickler den trunk um Korrekturen vorzunehmen.
Die Releaseverantwortlichen können dann einzelne Korrekturen in die branch übernehmen.
Wenn alles stable ist wird die Version getaggt und auf den Produktionsmaschinen wird aus der branch geupdatet.
Erweiterungen zum svn update:
Einmal dürfen natürlich keine Konfigurationsdateien eingecheckt werden - die Zugangdsaten der Produktionsmaschinen bleiben geheim. Daher gibt es ein Konfigurationsscript.
a) das konfigurationstemplate wird geparst und versucht zu befüllen - wenn Variablen fehlen wird abgebrochen
b) sind datenbankverbindungen angegeben werden tests durchgeführt.
c) datenbankänderungen die auch in der verzeichnisstruktur liegen werden ausgeführt (falls gekennzeichnet als pre-update)
d) fileupdates ausführen
e) datenbankänderungen (post-update)
Ich dachte mir, dass jede Softwarefirma vor so einem Problem steht - kennt ihr eine Software wie das angesprochene "Konfigurationsscript" ?
Wie läuft das bei euch ab? Wie sollte es ablaufen?