# Automatisches Einrichten von "Arbeitsumgebungen"



## madboy (15. Nov 2010)

Hallo zusammen,

Ich suche eine Möglichkeit, um verschiedene "Arbeitsumgebungen" automatisch und reproduzierbar einzurichten. Mit Arbeitsumgebung meine ich unter anderem Eclipse mit diversen Plugins, Ant, Maven, JDKs in jeweils einer konkreten Version und natürlich ein Workspace aus einem SVN-Tag/Branch.

Beispiel: Bei einem Kunden wird ein Release installiert. Zum Entwickeln wurde Eclipse Galileo mit Plugins X, Y und Z verwendet, Maven 2.0.9, Ant 1.8.1, JDKs 1.4.0_06, 1.5.0_02 und 1.6.0_16.

Nach zwei Jahren entdeckt der Kunde einen Bug und ich muss den reparieren. Um jetzt nicht suchen zu müssen, welche JDK-Versionen zum Kompilieren verwendet wurden, mit welcher Maven-Version das auch kompiliert usw. hätte ich gern Unterstützung in Form eines Tools, das das für mich erledigt.

Hatte schon an ein simples Skript gedacht (Shell oder .bat) aber das erscheint mir nicht sehr geeignet. Kennt ihr evtl. ein Tool oder könnt mir Denkanstöße geben?

Dankeschön,
madboy


----------



## gman (15. Nov 2010)

Hi,

im letzten eclipse-Magazin war ein Artikel über Yoxos. Das dürfte was für dich sein:

Man definiert in einer Datei die "Arbeitsumgebung" (Workspace, Plugins, etc) und mit einem Doppelklick
wird alles gestartet. Habe es selber noch nicht benutzt, aber von der Beschreibung her sollte es
genau das sein was du suchst.


----------



## madboy (15. Nov 2010)

Dankeschön gman. Werde ich mir mal anschauen 

EDIT: Yoxos scheint "nur" Eclipse-Installationen zu managen. Mir geht es aber auch noch um das ganze drum herum wie Maven, Ant, JDKs, ... Eclipse mit Plugins ist ein Teil davon und könnte auch trivialerweise gezippt und irgendwo mit Versionsnummer abgelegt werden.

Ich stelle mir vor, ich komme an einen "leeren" PC, führe ein Kommando aus (gib mir Branch 1.2.3 mit allem drum und dran), gehe einen (oder 3) Kaffee trinken, komme zurück und ich kann Bugs jagen ;-)


----------



## Wildcard (16. Nov 2010)

Workspace Provisioning (Checke Projekte aus Branch XY aus, hole Artefakte aus Maven Repository in Version Z, usw) lässt sich sehr schön mit Eclipse Buckminster umsetzen. Buckminster kann auch verwendet werden um das Provisioning einer Eclipse Installation mit zusätzlichen Plugins zu übernehmen, allerdings kann das der Eclipse p2 Director auch (lässt sich zB per shell script erledigen).
Ausser den Paketverwaltungen der Linux Distributionen kenne ich keine Software die automatisch die anderen von dir gewünschten Tools (Ant, Maven, JDK,...) installiert.
Grundsätzlich geht wohl auch das mit Eclipse dank den p2 Touchpoints, aber dafür wirst du Code schreiben müssen.
Was ich mir zB vorstellen könnte ist folgendes Scenario:
-Eine Webstart Anwendung die den p2 Director enthält und anschließend automatisch eine bestimmte Eclipse installation aus verschiedenen p2 Repositories für die aktuelle Platform passend zusammenbaut.
-Ein CQuery für Buckminster das den Workspace mit den benötigten Projekten befüllt und evtl. die diversen precompile Schritte durchführt

Du brauchst dann nur zwei Links um Browser und hast ein frisches Eclipse und einen fertigen Workspace.
Die Sache mit Maven, JDK, usw könnte wie gesagt über p2 Touchpoints gelöst werden, aber dafür wirst du Coden müssen und es gibt dafür AFAIK nicht sehr viel Dokumentation.


----------



## madboy (17. Nov 2010)

Dankeschön Wildcard, werde ich mir auch mal anschauen


----------

