run API を使用して rundeck ジョブを実行したいと考えています。実行時にいくつかのパラメータを runDeck ジョブに渡したいと考えています。
パラメータを受け入れるようにジョブを構成する必要がありますか? パラメータを渡して API を実行する方法は?
前もって感謝します
よろしくSJ
run API を使用して rundeck ジョブを実行したいと考えています。実行時にいくつかのパラメータを runDeck ジョブに渡したいと考えています。
パラメータを受け入れるようにジョブを構成する必要がありますか? パラメータを渡して API を実行する方法は?
前もって感謝します
よろしくSJ
オプション 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"
Rundeck の API ドキュメントには、ジョブの実行方法が説明されています。
はい、パラメーター化されたジョブを作成し、API 呼び出しの一部として引数を渡す必要があります。これは、予期されるパラメーターのみを受け入れることができるセキュリティ対策と見なすことができます。