2017-03-31 1 views
0

Ich versuche, einen Jenkins-parametrisierten Job mit dem Befehl curl aufzurufen. Ich folge Remote API Jenkins.Wie man ein Array zu einem jenkins parametrisierten Job über Fernzugriff API übergeben?

Ich habe Active Choice-Parameter-Plugin. Einer der Parameter des Jobs ist ein reaktiver Active-Choice-Parameter. Hier

ist der Screenshot des Jobs:

enter image description here

ich den folgenden curl Befehl verwenden es auslösen mit dem Parameter:

curl -X POST http://localhost:8080/job/active-choice-test/buildWithParameters -u abhishek:token --data-urlencode json='{"parameter": [{"name":"state", "value":"Maharashtra"},{"name":"cities", "value":["Mumbai", "Pune"]}]}' 

Aber ich bin nicht in der Lage, die Städte zu übergeben Parameter, der ein JSON-Array sein sollte. Das obige Skript gibt einen Fehler.

Ich drucke den Zustand & Städte Variable wie folgt aus:

enter image description here

Der Auftrag ausgeführt wird, immer und zeigt Fehler für Städte:

Started by user abhishek 
Building in workspace /var/lib/jenkins/workspace/active-choice-test 
[active-choice-test] $ /bin/sh -xe /tmp/hudson499503098295318443.sh 
+ echo Maharashtra 
Maharashtra 
+ echo error 
error 
Finished: SUCCESS 

Bitte sagen Sie mir, wie Array-Parameter übergeben zu einem jenkins-parametrisierten Job bei Verwendung der Remote Access API?

Antwort

-1

Sie können den Wert auf Strings anstatt Array ändern:

curl -X POST http://localhost:8080/job/active-choice-test/buildWithParameters -u abhishek:token --data-urlencode json='{"parameter": [{"name":"state", "value":"Maharashtra"},{"name":"cities", "value":"Mumbai,Pune"}]}'

Verwandte Themen