2017-02-08 12 views
1

Installierte Blue Ocean vom Docker Bild docker pull jenkinsci/blueocean. Ich wollte eine Cloud Foundry Deployment Schritt (sh cf push) in meiner Pipeline und mit dem Fehler zu stecken sind:Jenkins-Pipeline - Cloudfoundry-Bereitstellung aktivieren

script.sh: line 1: cf: not found 

Ich wusste, was los ist - da es keine kompatiblen CF CLI-Plug-in der CF-Script-Befehl ist nicht funktioniert . Und ich versuchte, verschiedene Dinge:

In meinem Jenkinsfile habe ich versucht, mit der der Cloud Foundry-Plug-in (CloudFoundryPushPublisher), die in Nicht-Pipeline-Build unterstützt wird. Und das hat nicht geholfen.

step([$class: 'com.hpe.cloudfoundryjenkins.CloudFoundryPushPublisher', 
     target: 'https://api.ng.bluemix.net', 
     organization: 'xxxx', 
     cloudSpace: 'xxxxx', 
     credentialsId: 'xxxxxx', 
     selfSigned: true, 
     resetIfExists: true]); 

dass nicht mit Invalid Argument exception.

Meine Frage ist, ich habe gehört, Cloudbees hat eine kommerzielle Version, die CF CLI unterstützt, aber diese Fähigkeit fehlt von Blue Ocean. Wie also sollte ich in der Lage sein, die Bereitstellungen mithilfe eines Pipeline-Jobs in die Cloud-Foundry zu verschieben?

Antwort

1

Ich bin mir nicht sicher, ob Sie das Problem bereits behoben haben, aber ich habe 'cf cli' auf jenkins machine manuell installiert und benutze 'cf push' als Shell-Skript;

sh 'cf login -u xxx - p xxx -s space -o org' 
sh 'cf push appname ...' 
+0

Wenn ich BlueOcean und CF-CLI auf meinem Mac aufstelle, gibt es keine Probleme. CF-Befehle von JenkinsFile werden ohne Probleme ausgeführt. Wenn BlueOcean jedoch auf einer Andock-Instanz ausgeführt werden soll, auf der das CF-Plug-in nicht im selben Container verfügbar ist, schlägt die Ausführung fehl. Für jetzt habe ich Dockerbild für blauen Ozean aufgegeben. – SekharKari