Start-Script über Jenkins-Shell

Alle weiteren Dienste, die nicht in die drei oberen Foren gehören.
Antworten
MenschGuenther
Beiträge: 2
Registriert: 04.06.2013 09:34:00

Start-Script über Jenkins-Shell

Beitrag von MenschGuenther » 04.06.2013 09:55:39

Hallo zusammen,

ich weiß nicht, ob ich mit meinem Problem richtig bin, möchte jedoch ganz unten (also beim OS) anfangen :)

Ich habe mir vor kurzem nach dieser Anleitung ein Jenkins-Server installiert, um meine Applikation (Play! Framework) automatisch starten zu lassen.

Dazu habe ich mir ein Start-Script geschrieben, welches wunderbar funktioniert wenn ich es als Jenkins-User von Konsole ausführe (/etc/init.d/playframework.sh start).

Code: Alles auswählen

#!/bin/sh
### BEGIN INIT INFO
# Provides: playframework
# Required-Start: $local_fs $remote_fs $network $syslog
# Required-Stop: $local_fs $remote_fs $network $syslog
# Default-Start: 2 3 4 5
# Default-Stop: 0 1 6
# Short-Description: Start/Stop playframework
### END INIT INFO
#
#source some script files in order to set and export environmental variables
#as well as add the appropriate executables to $PATH

export PIDFILE='/var/lib/jenkins/workspace/App/RUNNING_PID'
USER=jenkins
GROUP=nogroup

case "$1" in
start)
echo "Starting playframework"
/sbin/start-stop-daemon --start --exec /var/lib/jenkins/workspace/App/target/start --background -- -Dhttp.port=9000
;;
stop)
echo "Stopping playframework"
/sbin/start-stop-daemon -K -p "/var/lib/jenkins/workspace/App/RUNNING_PID" -u "${USER}" -R 30 ;;
*)
echo "Usage: /etc/init.d/playframework {start|stop}"
exit 1
;;
esac

exit 0
Möchte ich es allerdings als Shell-Befehl von der Jenkins Oberfläche ausführen lassen.

Bild

startet die Anwendung nicht leider nicht. Obwohl die Konsolenausgabe ein success meldet.

Bild

Nun bleibt die Frage, wieso es nicht funktioniert.

Zur Vollständigkeit:
Das Start-Script welches ich für Play ausführe, besitzt auch nicht viel Magie.

Code: Alles auswählen

#!/usr/bin/env sh

exec java $@ -cp "`dirname $0`/staged/*" play.core.server.NettyServer `dirname $0`/..

hec_tech
Beiträge: 1094
Registriert: 28.06.2007 21:49:36
Wohnort: Wien
Kontaktdaten:

Re: Start-Script über Jenkins-Shell

Beitrag von hec_tech » 05.06.2013 03:04:16

Mit Jenkins mit integrierten Java Server habe ich leider keine wirklichen Erfahrungen.
Du könntest mal auf den Jenkins User wechseln und schaun ob du von dort aus das Script erfolgreich starten kannst.
Ich denke da liegt das ganze Problem. Soviel ich das sehe kommt ja das echo aus dem Skript. Also auf das Script selbst dürfte Jenkins zugreifen können.

MenschGuenther
Beiträge: 2
Registriert: 04.06.2013 09:34:00

Re: Start-Script über Jenkins-Shell

Beitrag von MenschGuenther » 05.06.2013 23:08:28

Die Scripte die ich alle zum Starten geschrieben habe, habe ich auch alle vorher als Jenkins User von Konsole ausprobiert.
Das ging auch immer ohne Probleme :/

Antworten