0

也许这是一种愚蠢的方法,但我正在努力找出最好的方法。使用 python 中的 JenkinsAPI,我正在使用特定节点上运行作业

job.invoke("jobToken",False,False,3,5,{"NODE": node_name}).   

作业本身正在尝试将节点标记为临时脱机。作业运行的内容在作业配置屏幕的 Build -> Execute Shell -> Command 中指定。
使用

wget "http://jenkins/computer/${NODE}/toggleOffline?offlineMessage=Taken_down"

我在控制台输出上收到 403 Forbidden 错误。
使用

curl "http://jenkins/computer/${NODE}/toggleOffline?offlineMessage=Taken_down"  

我收到 html 响应说“需要身份验证”。(也在控制台输出上)。
所以我的问题是如何从作业中将节点标记为离线。
谢谢。

4

1 回答 1

2

我认为您必须添加用户名和密码

curl -X POST "http://jenkins/computer/${NODE}/toggleOffline?offlineMessage=Taken_down" --user username:password

我在以下位置看到了这一点: 如何将 Jenkins 用户身份验证详细信息“传递”到使用 Jenkins API 创建作业的脚本?

于 2013-08-26T08:22:55.687 回答