6

run API を使用して rundeck ジョブを実行したいと考えています。実行時にいくつかのパラメータを runDeck ジョブに渡したいと考えています。

パラメータを受け入れるようにジョブを構成する必要がありますか? パラメータを渡して API を実行する方法は?

前もって感謝します

よろしくSJ

4

2 に答える 2

9

オプション 1:トークンがない場合、最初にログインして Cookie を取得する

curl \
  -D - \
  -X POST \
  -H "Content-Type: application/x-www-form-urlencoded" \
  -H "Cache-Control: no-cache" \
  -d "j_username=${RD_USER}&j_password=${RD_PASSWORD}" \
  --cookie-jar rd_cookie \
  "${RD_URL}/j_security_check"

次に、成功したログインから受け取った Cookie を後続のトランザクションに使用します

curl \
  -D - \
  -X "POST" \
  -H "Accept: application/json" \
  -H "Content-Type: application/json" \
  -d "{\"argString\":\"-arg1 val1 -arg2 val2 -arg3 val-3 -arg4 val4 \"}" \
  --cookie "@rd_cookie" \
  "${RD_URL}/api/16/job/${RD_JOB_ID}/executions"

オプション 2:トークンを使用すると、より簡単になります

curl \
  -D - \
  -X "POST" -H "Accept: application/json" \
  -H "Content-Type: application/json" \
  -H "X-Rundeck-Auth-Token: ${RD_TOKEN}" \
  -d "{\"argString\":\"-arg1 val1 -arg2 val2 -arg3 val-3 -arg4 val4 \"}" \
  "${RD_URL}/api/16/job/${RD_JOB_ID}/executions"
于 2016-11-16T06:18:35.947 に答える
2

Rundeck の API ドキュメントには、ジョブの実行方法が説明されています。

はい、パラメーター化されたジョブを作成し、API 呼び出しの一部として引数を渡す必要があります。これは、予期されるパラメーターのみを受け入れることができるセキュリティ対策と見なすことができます。

于 2014-12-27T14:09:11.623 に答える