构建成功后设置了"构建后操作"为"钉钉通知器配置",而有些时候虽然没有执行某些步骤,但是还是会执行构建后操作,所以想用shell来停止,获取父进程id然后kill,实验过程中把"/usr/bin/java -Djava.awt.headless=true"给停掉了,导致jenkins服务停止。后来在构建过程中通过单击停止按钮,弹出提示框是否abort,然后就关键字"jenkins abort"搜索到文章<How can I abort a jenkins build - Stack Overflow>,"If the build has started, by GET on: http://<Jenkins_URL>/job/<Job_Name>/<Build_Number>/stop",然后在浏览器中输入,提示发送post请求确认后果真停止了构建过程,然后想着怎么在脚本中通过curl命令来触发,然后关键字"curl post"搜到文章<Linux curl 命令模拟 POST/GET 请求>,看了下发送post请求需要-d参数,由于并不想发送数据所以-d参数的值为"",没有成功后来就关键字"jenkins curl post"搜到文章<curl 调用jenkins的api>,发现里面有个"构建job login"和"命令中--user 表示jenkins账号密码认证 ",然后参照着加了--user 参数,然后就成功终止了当前构建过程。

       关于jenkins批量修改任务配置,参考了<10,Jenkins实战应用--Jenkins插件之批量修改配置>,通过Configuration Slicing插件实现了批量修改。看了下文章<Jenkins批量修改配置文件>,是通过shell脚本修改任务目录下的config.xml实现的,后来又看了<如何批量修改Jenkins job的配置?>和<解析xml文件,修改Jenkins的配置>两篇文章,思路也是修改config.xml,但是如果这样那还是用shell可能更方便些。还找了一篇文章<python+selenium批量修改jenkins项目分支>,python实现,不过没有细看。

Logo

权威|前沿|技术|干货|国内首个API全生命周期开发者社区

更多推荐