web-dev-qa-db-fra.com

passage du paramètre au travail jenkins via curl POST ne fonctionne pas?

J'essaye de lancer

curl -X POST -u "user:pass" -H Jenkins-Crumb:thecrumbnumber http://myjenkinsserver/jenkins/job/testjob/buildWithParameters?=PARAMETER=somenumber

qui fonctionne en déclenchant une construction paramétrée, mais le problème est qu'aucune valeur n'est transmise à la construction (ce qui est bizarre même lorsque le jeton est défini dans le travail, je peux déclencher le travail sans lui). Dans jenkins, ce travail a une chaîne configurée "PARAMETER" avec ou sans valeur par défaut, mais jamais le paramètre du lancement de curl n'est passé. Ce qui me manque peut-être?

7
koller23

J'utilise:

curl -X POST -u "user" "http://myjenkins/path/to/my/job/buildWithParameters?GERRIT_REFNAME=feature/retry&goal=package"

ici et ça marche comme un charme.

Attention au "=" devant le "PARAMETRE" dans l'URL que vous avez collée.

12
guandalf

J'ai utilisé la commande ci-dessous pour passer plusieurs paramètres.

curl -X POST "https://myjenkins.com/job/jobname/buildWithParameters?token=developer&name=abc&userid=CFDH123&[email protected]"

Remarque: les noms de paramètres sont sensibles à la casse.

3
GangaRam Dewasi

Veuillez essayer quelque chose comme:

curl -X POST http://<jenkins URL>/jenkins/job/TESTS/job/<Your job's Name>/buildWithParameters \
  --user <Jenkins account>:<account's TokenID>  \
  --data token=<job's token (if required)> \
  --data parameter=some_value
  ...
  --data MessageTextParameter=My%20Text
2
FCA69

J'essaie également de publier, mais la commande curl suivante, mais elle ne s'affiche pas.

curl -X POST -v https://JENKINS_SERVER/job/JOBNAME/buildWithParameters --user foo:8382 --data-urlencode json='{"parameter": [{"name": "registration_action","value": "DNS_only"},{"name": "entries","value": "add, hostname01.local.example.com, 192.168.1.1/24\nremove, hostname01.local.example.com, 192.168.1.1/24/\n" }]}'

Il crée le travail mais ne transmet pas les variables. Je ne sais pas, ce que je fais mal.

0
miu

On dirait qu'il y a une faute de frappe dans la page Jenkins Confluence lors de l'appel de l'url Jenkins en passant des paramètres comme charge utile JSON .. https://wiki.jenkins.io/display/JENKINS/Remote+access+API Essayé avec l'url suffixe comme build au lieu de buildWithParameters et cela fonctionne ..

curl -X POST -u "user: token/password" " http: // myjenkins/path/to/my/job/build --data-urlencode json = '{"parameter": [{"name": "GERRIT_REFNAME", "value": "feature/retry"}, {"name": "goal", "value": "package"}]}' '

0
Ramesh Pasham

J'utilise Trigger builds à distance et j'ai eu le même problème et rien de ce qui précède n'a aidé. Lorsque je passe des paramètres via les paramètres d'url

curl -X POST http://myJenkins/job/testjob/buildWithParameters?token=<myToken>&param1=value1

le travail est déclenché mais les paramètres ne sont pas propagés.

Utilisation des paramètres de formulaire curl (-F param1=value1) résolu le problème:

curl -X POST http://myJenkins/job/testjob/buildWithParameters?token=<myToken> -F param1=value1
0
makozaki

Quand j'ai essayé

curl -X POST http://icm.git:[email protected]:8080/job/1_TODO_Get_Submit_Request_With_Dependency_Test/buildWithParameters?PARAMETER=1494390553639

OR

curl -X POST -u "icm.git:lge123" -H Jenkins-Crumb:faedc992afcd1ea4db3da6809435117a http://10.221.31.36:8080/job/1_TODO_Get_Submit_Request_With_Dependency_Test/buildWithParameters?PARAMETER=1494390553639

Les deux ont déclenché le travail Jenkins> 1_TODO_Get_Submit_Request_With_Dependency_Test mais le paramètre du journal Jenkins a montré la valeur par défaut du paramètre REQUESTID = -1.

Quel est le problème avec Jenkins ou l'URL CURL?

+ echo '4.2.25(1)-release'
4.2.25(1)-release
+ echo

+ echo 26
26
+ echo '#26'
#26
+ echo 1_TODO_Get_Submit_Request_With_Dependency_Test
1_TODO_Get_Submit_Request_With_Dependency_Test
+ echo 1_TODO_Get_Submit_Request_With_Dependency_Test
1_TODO_Get_Submit_Request_With_Dependency_Test
+ echo REQUESTID = -1
REQUESTID = -1
0
Muralidhar BN