jenkins - 詹金斯:如果作业名称包含删除作业
问题描述
我已经完成了这里的解决方案
for(j in jenkins.model.Jenkins.theInstance.getAllItems()) {
j.delete()
}
但我害怕运行它,因为我不想删除所有作业。是否可以根据条件运行它,
for(j in jenkins.model.Jenkins.theInstance.getAllItems()) {
if(j.contains("demo")){
j.delete();
}
}
我不知道 contains 是否有效,但举个例子,以更好的方式解释我的要求。
此外,我们可以使用此j
变量执行的所有功能。
詹金斯版 2.176.2
解决方案
您可以实现条件语句。要删除包含特定字符串的作业,您可以使用:
for(j in jenkins.model.Jenkins.theInstance.getAllItems()){
if((j.fullName).contains("demo")){
j.delete()
}
}
注意:如果您的 Jenkins 实例中有 3 个作业名为“demo”、“demo1”和“example”,则此脚本将删除“demo”和“demo1”,但不会删除“example”。要仅删除“演示”,请使用条件:
if((j.fullName).equals("demo"))
最后,您可以利用此链接描述如何列出脚本中引用的对象可用的特定方法。
推荐阅读
- spring-boot - 微服务无法连接到作为 docker 镜像运行的 AXON 服务器
- kubernetes - 错误:elasticsearch 没有部署的版本错误:插件“2to3”退出并出现错误
- flutter - 如何在 Flutter 上获取其他应用程序的通知数据,尤其是在 IOS 上?
- google-sheets - 在 googlesheet 中为每个学生生成/制作图形并将图形图像自动保存到 gdrive
- singularity-container - 为什么奇异容器中的命令无法运行?
- r - Aov 模型摘要在函数中使用时不打印
- netsuite - netsuite restlet 错误“消息”:“ReferenceError:\“Ext\”未定义。(app-all.js#1)。”
- python - PyPDF2 在追加时打印数百个空白页
- flutter - 如何导航到 Flutter Flame Engine 游戏小部件之外的小部件
- python-3.x - ConnectionRefusedError: [Errno 111] Connect call failed -- 我需要定位哪些 IP?