2017-12-21 3 views
0

Ich mag würde ein Docker openjdk auszuführen: 8-jdk mit dem folgenden Befehl:Docker mit laufen if-Anweisung innerhalb Docker Bamboo Aufgabe

if [ "$GIT_BRANCH" = "master" ]; then ./gradlew publish; else echo Skipped because it is not master branch; fi 

Ich habe versucht, die folgenden Funktionen ausführen:

docker run --rm openjdk:8-jdk "if [ \"$GIT_BRANCH\" = \"master\" ]; then echo hi; else echo bla; fi" 

aber ich erhalte den folgenden Fehler: ausführbare Datei nicht in $ PATH gefunden ". unbekannt

des weiteren wird sie für mich nicht möglich ist, dass ich die if-Anweisung wie das verwenden:

if ... 
    docker run ... 
else 
    echo Skipped 

Weil ich es als Bambus-Docker-Aufgabe ausführen muss.

Antwort

0

Da der obige Befehl nicht innerhalb bash ausgeführt wird, hat bash gestartet wie die erste sein:

docker run --rm openjdk:8-jdk /bin/bash -c "if [ \"$GIT_BRANCH\" = \"master\" ]; then ./gradlew publish; else echo Skipped because it is not master branch; fi"