mediengestalter.info
FAQ :: Mitgliederliste :: MGi Team

Willkommen auf dem Portal für Mediengestalter

Aktuelles Datum und Uhrzeit: Fr 26.04.2024 11:49 Benutzername: Passwort: Auto-Login

Thema: Workflow für Webdevelopment (git, eclipse, jira, capistrano) vom 11.03.2012


Neues Thema eröffnen   Neue Antwort erstellen MGi Foren-Übersicht -> Allgemeines - Nonprint -> Workflow für Webdevelopment (git, eclipse, jira, capistrano)
Autor Nachricht
sahnemuh
Threadersteller

Dabei seit: 19.06.2003
Ort: /dev/null
Alter: 42
Geschlecht: Männlich
Verfasst So 11.03.2012 00:07
Titel

Workflow für Webdevelopment (git, eclipse, jira, capistrano)

Antworten mit Zitat Zum Seitenanfang

Hallo MGI,

ich bin derzeit in der glücklichen Lage mir einen sinnvollen, neuen Entwicklungsworkflow für kommende Projekte einfallen zu lassen. Ziel ist es die Qualitätssicherung sinnvoller zu handhaben und im Zuge dessen einige Altlasten technischer bzw. infrastruktureller Natur über Bord zu werfen. Ich würde gerne ein paar Schlagworte in den Raum werfen und hätte Interesse an einer regen Diskussion mit Menschen, die eventuell mit dem ein- oder anderen Tool (oder bestenfalls allen in Kombination) bereits zu tun hatten.
Die Ausgangslage ist folgendermaßen: Wir versionieren unsere Projekte derzeit noch mit einem recht altertümlichen, propertiären scm. Jeder benutzt eine andere IDE und es gibt teilweise je kunde historisch gewachsen unterschiedliche Bug-Tracking Systeme.
Unsere Projekte sind meistens zwar größer und beeinhalten auch echte "Software Entwicklung (PHP, eigenes Framework basierend auf eZ Components oder wahlweise ZEND)", sind aber zumeist eher "frontendlastig", daher klammere ich Themen wie standardmäßige Unit-Tests, Selenium etc. mal vorsichtig aus (auch dafür gibt es aber mitunter Bedarf).

Meine Idealvorstellung ausgehend von "vom Kunden kommt konkreter Auftrag XY" sieht folgendermaßen aus:
- Aufsetzen eines Ticketing-Systems für das Projekt (Derzeit auf meinem Radar: Jira, ActiveCollab)
- Als Entwicklungsumgebung kommen Eclipse (für Frontend+Aptana) oder PhpStorm (für Frontend WebStorm) zum Einsatz
- Als SCM hätte ich gerne GIT
- Ich hätte beides gerne in die IDE integriert (z.B. MyLyn und entsprechende konnektoren + GIT-Integration)
- Entwickelt wird lokal (ist derzeit auch der Fall), Als Webserver läuft Apache (über WampServer wegen multipler Apache/PHP Versionen, Entwicklungsrechner sind alle Windows Kisten)
- Browserchecks über lokal installierte Browser + VMs (IE) für Anwendungen / JS + Adobe Browserlabs für allgemeines Layout testen
- Es gibt einen internen Server auf den "gepusht" wird. Dieser dient auch zur internen Qualitätssicherung.
- Nach dem Fertigstellen einer Aufgabe in Form eines Tickets wird dieses durch den jeweils Verantwortlichen (internen) Qualitätsgesichert. Das Ticket kann nicht durch den Bearbeiter geschlossen werden
- Ist die Qualitätssicherung abgeschlossen wird das Projekt / der Bugfix / das Feature per GIT auf einen Staging-Server beim Kunden deployed um nach Abnahme dann ebenfalls automatisiert (Capistrano) auf den Live-Server zu wandern. Alle "externen" Server sind jeweils absolute "No-Go" Zonen für FTP/SSH/Mal eben was korrigieren Aktionen

Meine Frage: Wie kriegt man einen solchen Workflow möglichst sinnvoll (Verzahnung: Tickets und SCM in IDE) und schmerzfrei aufgesetzt? Ist meine "Wahl der Waffen" O.K.? Gibt es Alternativen? Habe ich etwas vergessen?

Danke schon mal im Voraus!

€: Ach ja. Ich habe noch 1-2 Anforderungen / Fragen zu einigen Tools vergessen:
- Das Ticketsystem sollte "Interne" und "Externe" Tickets unterstützen (Kunde soll Zugriff bekommen), Tickets müssen per Mail erstellt werden können
- Das Ticketsystem sollte intern in einer DMZ gehostet werden (Clouddienste also ausgeschlossen)
- Adobe Browserlabs ist nicht gesetzt... gibt es da bessere Alternativen?
- Über WampServer bin ich mir auch unsicher Zend ist "Oversized", XAMPP geht garnicht... ich brauche irgendwas, was gleiche Vorraussetzungen für unterschiedliche PHP/Apache Versionen schafft


Zuletzt bearbeitet von sahnemuh am So 11.03.2012 00:22, insgesamt 2-mal bearbeitet
  View user's profile Private Nachricht senden
bacon

Dabei seit: 24.10.2007
Ort: -
Alter: -
Geschlecht: -
Verfasst So 11.03.2012 22:35
Titel

Antworten mit Zitat Zum Seitenanfang

Zitat:
- Als Entwicklungsumgebung kommen Eclipse (für Frontend+Aptana) oder PhpStorm (für Frontend WebStorm) zum Einsatz


Netbeans und/oder PhpStorm.

Git versteht sich am besten mit der shell, aber Guitools haben beide IDEs.

Zitat:
- Entwickelt wird lokal (ist derzeit auch der Fall), Als Webserver läuft Apache (über WampServer wegen multipler Apache/PHP Versionen, Entwicklungsrechner sind alle Windows Kisten)


Das läuft der Aussage

Zitat:
ich bin derzeit in der glücklichen Lage mir einen sinnvollen, neuen Entwicklungsworkflow für kommende Projekte einfallen zu lassen.


zuwider. Nutzt ubuntu und/oder zur Not nen Mac. PHP-Entwicklung unter Windows ist möglich, aber sinnlos.

Zitat:
PHP, eigenes Framework basierend auf eZ Components oder wahlweise ZEND


Für neue Projekte würd' ich dann schnellstens mal auf irgendeinen Symfony 2 Stack umsteigen.

Zitat:
sind aber zumeist eher "frontendlastig", daher klammere ich Themen wie standardmäßige Unit-Tests, Selenium etc. mal vorsichtig aus (auch dafür gibt es aber mitunter Bedarf).


Selenium ist ausschließlich für Frontend-Tests gebaut worden. Unittests mit (PEAR-)PHPUnit, ist defacto-Standard.

Zitat:
Jira, ActiveCollab


Jira ist aus meiner Sicht nicht lightweight genug. Mach ein Redmine auf, Deine Entwickler werden sich schon schwer genug mit der Umstellung tun.

Zitat:
Als SCM hätte ich gerne GIT


Ich auch:)

Zitat:
Ich hätte beides gerne in die IDE integriert (z.B. MyLyn und entsprechende konnektoren + GIT-Integration)


Mylyn ist Terror - ist aber schon ein paar Jahre her, dass ich das benutzt hatte. Hat so gar nicht funktioniert. Find ich auch quatsch, mit ne IDE mit so einem Gehampel vollzumachen. Naja, vielleicht gehts ja nun besser?

Zitat:
ich brauche irgendwas, was gleiche Vorraussetzungen für unterschiedliche PHP/Apache Versionen schafft


PHP + Apache + mod_suexec + fcgid oder
PHP + lighty + spawn-fcgi

Ansonsten ist die Wahl der Waffen wohl im groben und ganzen o.k. Besser als mit vim + FTP herumzukaspern allemal *zwinker*

//
Alternative zu capistrano vielleicht noch hudson/jenkins.


Zuletzt bearbeitet von bacon am So 11.03.2012 22:43, insgesamt 1-mal bearbeitet
  View user's profile Private Nachricht senden
Anzeige
Anzeige
Elorie

Dabei seit: 07.12.2005
Ort: Braunschweig
Alter: -
Geschlecht: Weiblich
Verfasst So 11.03.2012 22:57
Titel

Antworten mit Zitat Zum Seitenanfang

Eclipse hat Plugins die GIT relativ zufriedenstellend einbinden, bei den anderen beiden kann ich das nicht beurteilen, würde aber auf jeden Fall das Repo auf nem lokalen oder externen Datenserver haben und nicht nur auf den Rechnern...
  View user's profile Private Nachricht senden Website dieses Benutzers besuchen
remote

Dabei seit: 10.11.2006
Ort: /var/www/
Alter: 110
Geschlecht: Männlich
Verfasst So 11.03.2012 23:24
Titel

Antworten mit Zitat Zum Seitenanfang

Also was IDEs betrifft sind die von JetBrains ein absoluter no-brainer.
PHP IDE + HTML/JS/XML ---> PHPStorm. Mit weitem Abstand die kommerzielle Software mit dem besten Preis-/Leistungsverhältnis auf meinem Rechner.

Für die IDE gibt es auch ein Jira Plugin, so dass Tickets direkt in der IDE bearbeitet werden können.
Was das Deployment betrifft, ist mir demletzt in Essen beim Drupalcamp der Workflow von bright solutions über den Weg gelaufen - fand ich ganz sympatisch, wenn auch für uns etwas zuviel des Guten.
  View user's profile Private Nachricht senden
sahnemuh
Threadersteller

Dabei seit: 19.06.2003
Ort: /dev/null
Alter: 42
Geschlecht: Männlich
Verfasst So 11.03.2012 23:55
Titel

Antworten mit Zitat Zum Seitenanfang

bacon hat geschrieben:
Zitat:
- Als Entwicklungsumgebung kommen Eclipse (für Frontend+Aptana) oder PhpStorm (für Frontend WebStorm) zum Einsatz


Netbeans und/oder PhpStorm.


PhpStorm ist auch mein derzeitiger Favorit. Ich werde aber beide IDEs mal in meinem Team in "den Test geben". Schließlich muss ja nicht nur ich zukünftig damit arbeiten Lächel


bacon hat geschrieben:
Zitat:
- Entwickelt wird lokal (ist derzeit auch der Fall), Als Webserver läuft Apache (über WampServer wegen multipler Apache/PHP Versionen, Entwicklungsrechner sind alle Windows Kisten)


Das läuft der Aussage

Zitat:
ich bin derzeit in der glücklichen Lage mir einen sinnvollen, neuen Entwicklungsworkflow für kommende Projekte einfallen zu lassen.


zuwider. Nutzt ubuntu und/oder zur Not nen Mac. PHP-Entwicklung unter Windows ist möglich, aber sinnlos.


Windows ist gesetzt. Funktioniert übrigens in den 15 Jahren, die es die Agentur bislang gibt bestens. Ich persönlich entwickle auch lieber auf einem Mac, würde hier aber jetzt keine OS Diskussion vom Zaun brechen wollen. Mir ist allerdings klar worauf deine Aussage abzielt (Zielsystem ist zumeist unix/linux...).

bacon hat geschrieben:
Zitat:
PHP, eigenes Framework basierend auf eZ Components oder wahlweise ZEND


Für neue Projekte würd' ich dann schnellstens mal auf irgendeinen Symfony 2 Stack umsteigen.

Mir geht's hier eher um die Tools "drumrum". Ich bin kein Programmierer und überlasse zumindest diese Technologieentscheidungen den Leuten, die damit arbeiten und sich auskennen. Ich werde das aber gerne mal anregen (befürchte allerdings, dass es dabei bleibt Lächel).

bacon hat geschrieben:
Zitat:
sind aber zumeist eher "frontendlastig", daher klammere ich Themen wie standardmäßige Unit-Tests, Selenium etc. mal vorsichtig aus (auch dafür gibt es aber mitunter Bedarf).


Selenium ist ausschließlich für Frontend-Tests gebaut worden. Unittests mit (PEAR-)PHPUnit, ist defacto-Standard.

Ja, du hast recht. Es läuft aber zumeist auf folgendes hinaus: Es erhöht den Aufwand, erzeugt Kosten und Kunde xy ist nicht bereit dafür zu zahlen. Schon oft so erlebt. Leider. Im Sinne einer Qualitätssteigerung wäre beides (+ JS Unit-Tests) durchaus wünschenswert.

bacon hat geschrieben:
Zitat:
Jira, ActiveCollab


Jira ist aus meiner Sicht nicht lightweight genug. Mach ein Redmine auf, Deine Entwickler werden sich schon schwer genug mit der Umstellung tun.

Danke, werde ich mir mal ansehen. Ich finde allerdings das Default-Frontend sehr... unhübsch (und ja: das spielt bei mir eine große Rolle)

bacon hat geschrieben:

Zitat:
Ich hätte beides gerne in die IDE integriert (z.B. MyLyn und entsprechende konnektoren + GIT-Integration)


Mylyn ist Terror - ist aber schon ein paar Jahre her, dass ich das benutzt hatte. Hat so gar nicht funktioniert. Find ich auch quatsch, mit ne IDE mit so einem Gehampel vollzumachen. Naja, vielleicht gehts ja nun besser?

Ich finde das persönlich sehr praktisch und nutze ungern Web-Frontends von Ticketsystemen, weil ich dafür meine "Arbeitsumgebung" verlassen muss. Das wäre aber im Zweifel natürlich für jeden möglich, wenn gewünscht.

bacon hat geschrieben:

Zitat:
ich brauche irgendwas, was gleiche Vorraussetzungen für unterschiedliche PHP/Apache Versionen schafft


PHP + Apache + mod_suexec + fcgid oder
PHP + lighty + spawn-fcgi

Danke. Schaue ich mir mal an.

bacon hat geschrieben:

Ansonsten ist die Wahl der Waffen wohl im groben und ganzen o.k. Besser als mit vim + FTP herumzukaspern allemal *zwinker*

Danke für die Blumen *zwinker*

bacon hat geschrieben:

Alternative zu capistrano vielleicht noch hudson/jenkins.

Und schon wieder danke. Jenkins kannte ich nur vom Hörensagen und war bei mir unter "zu Enterprise" gespeichert. Nach kurzem Drüberschauen finde ich es aber durchaus interessant und werde mich mal schlau lesen.


Und zu guter letzt noch mal DANKE für deine Infos *zwinker*

€:
remote hat geschrieben:
A
Was das Deployment betrifft, ist mir demletzt in Essen beim Drupalcamp der Workflow von bright solutions über den Weg gelaufen - fand ich ganz sympatisch, wenn auch für uns etwas zuviel des Guten.

Den Prozess finde ich garnicht soooo viel zu viel des Guten. Ist auf jeden Fall ein guter Ansatz.


Zuletzt bearbeitet von sahnemuh am So 11.03.2012 23:59, insgesamt 1-mal bearbeitet
  View user's profile Private Nachricht senden
sahnemuh
Threadersteller

Dabei seit: 19.06.2003
Ort: /dev/null
Alter: 42
Geschlecht: Männlich
Verfasst Mo 12.03.2012 00:28
Titel

Antworten mit Zitat Zum Seitenanfang

Elorie hat geschrieben:
würde aber auf jeden Fall das Repo auf nem lokalen oder externen Datenserver haben und nicht nur auf den Rechnern...

So ist es ja auch geplant. Lokale Entwicklungsumgebungen von denen aus auf ein zentrales (internes) repo gepusht wird. Das interne Repo liegt natürlich auf einem gespiegelten, zyklisch gesicherten Server mit allem pipapo. Ist doch klar.
  View user's profile Private Nachricht senden
 
Ähnliche Themen Eclipse + PHP Browser?
Eclipse / Aptana
[IDE Eclipse] Tipps und Tricks gesucht
workflow nonprint
Workflow für Internetseite
Workflow für Webdesign
Neues Thema eröffnen   Neue Antwort erstellen
MGi Foren-Übersicht -> Allgemeines - Nonprint


Du kannst keine Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum nicht antworten.
Du kannst an Umfragen in diesem Forum nicht mitmachen.