Rundeck支持通过API触发作业。 API文档位于documentation。
下我们正在使用尚未支持application / json的API版本13。因此,我需要使用基于XML的请求。
在我以前的尝试中,我总是得到回复:
<result error="true" apiversion="13">
<error code="api.error.job.options-invalid">
<message>Job options were not valid: Option 'container' is required. Option 'version' is required.
</message>
</error>
</result>
由于没有提供示例请求,我正在搜索触发作业的示例有效负载。
如在响应中所见,我必须提供参数“container”和“version”,因为它们是必需的。
我最近的请求有效负载是:
<executeJob>
<argString>-container containerName -version 1234567</argString>
</executeJob>
我也尝试过这种有效载荷的不同变体,每次都有相同的响应。
答案 0 :(得分:7)
这应该对您有所帮助,假设您有一个令牌来访问Rundeck并获得运行作业的授权
curl -D - -X "POST" -H "Accept: application/json" \
-H "Content-Type: application/json" \
-H "X-Rundeck-Auth-Token: <TOKEN>" \
-d '{"argString":"-arg1 val1 -arg2 val2"}' \
http://<URL>/api/16/job/<JOB_ID>/executions