के साथ बनाया गया है, मैंने एसओ पर इसी तरह की पोस्ट देखी हैं, लेकिन बिल्कुल सही नहीं है कि मैं क्या करने की कोशिश कर रहा हूं (या कम से कम चलाने के लिए कमांड का कोई पूर्ण उदाहरण नहीं)।ट्रिगर पैरामीटर का निर्माण कर्ल और क्रंब
मैं कर्ल का उपयोग कर जेनकींस पर एक पैरामीटरयुक्त निर्माण को दूरस्थ रूप से ट्रिगर करने का प्रयास कर रहा हूं। मैंने 'क्रॉस साइट अनुरोध फोर्जरी रोकें' सक्षम किया है इसलिए मुझे एक वैध टुकड़ा पारित करने की भी आवश्यकता है।
स्क्रिप्ट मेरे पास नीचे है:
#!/bin/bash
json="{\"parameter\": [{ \"P1\": \"param1\", \"P2\": \"param2\", \"P3\": \"param3\" }]}"
crumb=`curl "http://SERVER/crumbIssuer/api/xml?xpath=concat(//crumbRequestField,%22:%22,//crumb)"`
curl -v -H $crumb -X POST http://SERVER/job/JOB_NAME/buildWithParameters -d token=runme --data-urlencode json="$json"
मैं भी यूआरएल मैं करने के लिए कर्ल करने के लिए गुजर रहा हूँ को संशोधित करने की कोशिश की है या तो:
USERNAME:[email protected]
और
USERNAME:[email protected]
कर्ल से आउटपुट है:
* About to connect() to SERVER port 8080 (#0)
* Trying SERVER... connected
* Connected to SERVER (SERVER) port 8080 (#0)
* Server auth using Basic with user 'USERNAME'
> POST /job/JOB_NAME/buildWithParameters HTTP/1.1
> Authorization: Basic bjAwNjY5MjI6YWxLaW5kaTg=
> User-Agent: curl/7.19.7 (x86_64-redhat-linux-gnu) libcurl/7.19.7 NSS/3.13.1.0 zlib/1.2.3 libidn/1.18 libssh2/1.2.2
> Host: SERVER:8080
> Accept: */*
> .crumb:776eb589e8b930d9f06cfc2df885314c
> Content-Length: 168
> Content-Type: application/x-www-form-urlencoded
>
< HTTP/1.1 403 No valid crumb was included in the request
< Content-Type: text/html;charset=ISO-8859-1
< Cache-Control: must-revalidate,no-cache,no-store
< Content-Length: 1469
< Server: Jetty(8.y.z-SNAPSHOT)
<
तो ऐसा लगता है कि मैं ठीक से टुकड़े को पार नहीं कर रहा हूं, लेकिन मुझे यकीन नहीं है कि कमांड का सही प्रारूप क्या होना चाहिए।
[जेनकिंस रीस्ट एपीआई नौकरी बनाएं] का संभावित डुप्लिकेट [https://stackoverflow.com/questions/38137760/jenkins-rest-api-create-job) – kenorb