通过API触发Rundeck作业

时间:2016-02-17 10:15:03

标签: rundeck

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>

我也尝试过这种有效载荷的不同变体,每次都有相同的响应。

1 个答案:

答案 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