smile-me
I'm new here

Remote Skript in Deployment-Prozess einbauen

Wie kann man beim Deploymentprozess vom FirstSpirit Server auf einen remote Web-Server am einfachsten nach dem Generieren ein Skript auf dem remote Server starten. Das Skript File ist bereits auf dem Server vorhanden und sollte nach dem rsync remote gestartet werden. Gibt's dafür ein Beispiel-Script?

0 Kudos
1 Reply
isenberg
I'm new here

Dazu bietet sich das von FirstSpirit mitgelieferte rsync-Deployment-Skript rsync-ssh.bsh als Basis an. Dort wird "rsync" als externer Prozess gestartet. Wenn Sie nun rsync durch ssh ersetzen, und als Parameter den Pfad zum aufzurufenden Skript übergeben, wird das Skript gestartet und dessen Logausgaben in die Logs des FirstSpirit-Auftrags umgeleitet.

In dem mitgelieferten Skript rsync-ssh.bsh werden 3 Aufrufe als cmd1, cmd2, cmd3 zusammengesetzt und anschliessend über "for (c: cmd)" abgearbeitet. Sie können also den Abschnitt zu cmd2 und cmd3 löschen und in dem für cmd1 Ihren eigenen Aufruf einbauen, der ungefähr folgendermassen aussehen dürfte:

cmd2 = new Vector();

cmd2.addAll(Arrays.asList(new String[]{ssh, keyopt, "-oBatchMode=yes", "-oStrictHostKeyChecking=no", "-l", webuser, webhost,

    "/pfad/zum/shellscript.sh", "skript-parameter1", "skript-parameter2"}));

cmd.add(cmd2);

Das modifizierte bsh-Skript dann als Skript-Aktion nach der Skript-Aktion "rsync-Deployment" in den Deployment-Auftrag eintragen.

rsync-ssh.bsh finden Sie im FirstSpirit Admin-Handbuch, Kapitel "Deployment über rsync" oder auch seit FirstSpirit 5 als ZIP in der Online-Hilfe unter Dokumentation -> Für Administratoren.

0 Kudos