打电话给
curl -s -X POST -H ${CRUMB} -u user:token "http://jenkinsserver/reload"
接下来的几个curl调用返回Jenkins重载等待页面的变体。最终卷曲开始按预期再次工作。发生了什么以及如何让我的计划再次确定?
答案 0 :(得分:0)
当Jenkins从磁盘重新加载时,它会向所有http请求返回“等待重新加载”页面。要等待Jenkins再次开始响应请求,请使用类似以下bash代码的内容。 crumb请求被用作简单的Jenkins请求。任何其他请求都可以。
curl -s -X POST -H ${CRUMB} -u user:token "http://jenkinsurl/reload"
#Give Jenkins time to reload
CRUMB=$(curl -s 'http://user:token@jenkinsurl/crumbIssuer/api/xml?\
xpath=concat(//crumbRequestField,":",//crumb)')
while echo ${CRUMB} | grep reload; do
echo "Waiting for reload to complete"
sleep 10
CRUMB=$(curl -s 'http://user:token@jenkinsurl/crumbIssuer/api/xml?\
xpath=concat(//crumbRequestField,":",//crumb)')
done