web-dev-qa-db-ja.com

curl経由でjenkinsジョブにパラメータを渡すPOST機能していませんか?

打ち上げてみます

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

これは、パラメーター化されたビルドをトリガーすることで機能しますが、問題はビルドに渡されないことです(トークンがジョブに設定されている場合でも奇妙なことに、それなしでジョブをトリガーできます)。 jenkinsでは、そのジョブにはデフォルト値の有無にかかわらず設定された文字列「PARAMETER」がありますが、curl launchからのパラメーターは渡されません。何が欠けているのでしょうか?

7
koller23

私が使用しています:

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

ここでそれは魅力のように働いています。

貼り付けたURLの「PARAMETER」の前の「=」に注意してください。

12
guandalf

以下のコマンドを使用して、複数のパラメーターを渡しました。

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

注:パラメータ名は大文字と小文字が区別されます。

3
GangaRam Dewasi

次のようなものを試してください:

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

私も投稿しようとしていますが、次のcurlコマンドですが、投稿されません。

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" }]}'

ジョブを作成しますが、変数を渡しません。よくわかりません。

0
miu

Jenkins urlを呼び出してパラメーターをJSONペイロードとして呼び出しているときに、Jenkins Confluenceページにタイプミスがあるようです。 https://wiki.jenkins.io/display/JENKINS/Remote+access+API buildWithParametersの代わりにビルドとしてURLサフィックスを使用してみましたが、機能しています。

curl -X POST -u "user:token/password" " http:// myjenkins/path/to/my/job/build --data-urlencode json = '{"パラメーター":[{"名前": "GERRIT_REFNAME"、 "値": "機能/再試行"}、{"名前": "目標"、 "値 ":"パッケージ "}]} '

0
Ramesh Pasham

私はTriggerビルドをリモートで使用していますと同じ問題があり、上記のいずれも役に立ちませんでした。 url parametersを介してパラメーターを渡す場合

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

ジョブはトリガーされますが、パラメーターは伝搬されません

カールフォームパラメータ(-F param1=value1) 問題を解決しました:

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

私が試したとき

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

どちらもJenkinsジョブ> 1_TODO_Get_Submit_Request_With_Dependency_Testをトリガーしましたが、JenkinsログのパラメーターはパラメーターREQUESTID = -1のデフォルト値を示しました。

JenkinsまたはCURL URLの何が問題になっていますか?

+ 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