当前位置: 首页 > 面试题库 >

詹金斯(Jenkins)删除所有作业的最新版本比最新的20版本更早的版本

充鑫鹏
2023-03-14
问题内容

我正在清理Jenkins(它的设置不正确),并且我需要删除每个工作都比最新的20个版本更旧的版本。

有什么办法可以使用脚本或其他方式来自动执行此操作?

我发现了很多解决方案,可以删除特定作业的某些内部版本,但似乎无法一次找到所有作业的任何内容。

任何帮助深表感谢。


问题答案:

您可以使用Jenkins脚本控制台遍历所有作业,获取最新的N个列表,并对其他作业执行一些操作。

import jenkins.model.Jenkins
import hudson.model.Job

MAX_BUILDS = 20

for (job in Jenkins.instance.items) {
  println job.name

  def recent = job.builds.limit(MAX_BUILDS)

  for (build in job.builds) {
    if (!recent.contains(build)) {
      println "Preparing to delete: " + build
      // build.delete()
    }
  }
}

Jenkins脚本控制台是进行此类管理维护的出色工具,并且通常存在一个现有脚本,其功能类似于您想要的。



 类似资料:
  • 问题内容: 我从Jenkins的构建目录中删除了旧的构建文件夹,希望将它们从UI中删除,但是不幸的是,这些构建目录不见了,它们的UI链接仍然存在。我现在有两个问题: 1)如何摆脱UI中已失效的链接? 2)如何从cli中删除旧版本并将其反映在UI中? 问题答案: 您必须重新启动Jenkins或重新加载数据,以使UI与后端保持一致。没有别的办法了。 如果可以访问“ Manage Jenkins”菜单,

  • 问题内容: 我在安装项目时遇到了一些问题。 我拥有运行 Swift 3* 的最新版本的 Xcode ,并且当我尝试安装alamofire时遇到800个编译器错误。 * 显然地 构建Alamofire 4.0.0+需要CocoaPods 1.1.0+ 我看着终端机上的CocoaPods版本,它说我的版本是1.0.1。 我猜运行更新没有用,因为CocoaPods 1.1是beta版。 因此,我不确定如

  • 虽然我有一个更新的android studio,我得到以下错误,但我不能找到Gradle4.1在gradle文件夹,但当我检查文件->项目结构->gradle插件是4。 我的建筑档案是这个。我设置为23,因为我需要在5.0.1手机上运行它。

  • 我删除旧的jenkins构建与其中的作业托管: 这些旧版本在作业页中仍然可见。如何用命令行删除它们? (在每个构建用户界面中没有删除按钮)

  • null 以下是项目构建的相关部分。格雷德尔: 和应用程序的构建。格雷德尔: 我省略了包、口味、其他依赖关系等,但希望这已经足够了。我在应用程序类的onCreate方法中确实有这样的内容: 我把它们拿出来是因为我相信它们不再需要了。不管怎样,这没什么区别。我已经检查了几次消防文件,不知道我错过了什么。 编辑:我最初遗漏的依赖项之一是Responsys。当我从我的应用程序中删除它时,我就不再看到错误

  • 我将启动一个新的企业应用程序。我想使用哪个版本?它是EAP 6.2.0 GA(EAP由AS 7.3构建)还是JBoss AS 7.1.0。最终版本或Wildfly 8.1.0。最终的我对这些版本感到非常困惑。何时必须下载EAP 6.2.0? 还有,为什么Wildfly没有avaialbe在http://jbossas.jboss.org/downloads/?为什么?我的印象是Wildfly和jb