2017-12-19 13 views
1

Ich habe eine neue Regressions-Suite, die die JAR von Wiremock Standalone verwendet. Um dies zu gewährleisten, wird auf dem Server ausgeführt wird, habe ich dieses Skript checkwiremock.sh genanntProblem beim Starten von Wiremock-Standalone unter Verwendung von Crontab

#!/bin/bash 

cnt=$(ps -eaflc --sort stime | grep wiremock-standalone-2.11.0.jar |grep -v grep | wc -l) 
if(test $cnt -eq 1); 
then 
    echo "Service already running..." 
else 
    echo "Starting Service" 
    nohup java -jar /etc/opt/wiremock/wiremock-standalone-2.11.0.jar --port 1324 --verbose & 
fi 

Das Skript wie erwartet funktioniert, wenn

./checkwiremock.sh 

jedoch manuell lief bei der Verwendung von Crontab gestartet,

* * * * * /bin/bash /etc/opt/wiremock/checkwiremock.sh 

Wiremock kehrt

Es konnte keine Antwort gesendet werden, da in dieser WireMock-Instanz keine Stub-Zuordnungen vorhanden sind.

Der einzige Unterschied, den ich zwischen dem manuell gestartet Prozess und cron Prozess sehen kann, ist die TTY

root  31526 9.5 3.2 1309736 62704 pts/0 Sl 11:28 0:01 java -jar /etc/opt/wiremock/wiremock-standalone-2.11.0.jar --port 1324 
root  31729 22.0 1.9 1294104 37808 ?  Sl 11:31 0:00 java -jar /etc/opt/wiremock/wiremock-standalone-2.11.0.jar --port 1324 

Kann nicht herausfinden, was hier nicht stimmt.

Server Details: Red Hat Enterprise Linux Server Version 6.5 (Santiago)

* Edit: korrigiert Pfade zu denen tatsächlich verwendet

Antwort

0

Ändern der direcoty im checkwiremock.sh

cd /path/to/shell/script 
+0

Groß Vielen Dank! Könnte auch die Option --root-dir enthalten java -jar /etc/opt/wiremock/wiremock-standalone-2.11.0.jar --port 1324 --root-dir/etc/opt/wiremock --verbose & – Mike

Verwandte Themen