jenkins:当build和pod都不存在时如何优雅地移除卡住的执行器

4zcjmb1e  于 2023-05-16  发布在  Jenkins
关注(0)|答案(1)|浏览(146)

如何优雅地删除Jenkins卡住的执行器:

  1. Jenkins管道通过kubernetes插件在kubernetes pod中运行
    1.由于生成历史循环配置(自动),生成已被删除
  2. Kuberentes pod已删除(手动)
    但是,该项目仍显示在生成执行器状态中,如下所示

通过WorkflowRun.finish获得java.lang.NullPointerException

即使构建也不存在了,但Executor.isBusy()Executor.isActive()都是true
hudson.model.Executor详细信息:

SubTask.isContinued()也显示了true
SubTaskorg.jenkinsci.plugins.workflow.support.steps.ExecutorStepExecution.PlaceholderTask)详细信息:

epggiuax

epggiuax1#

algith,它可以简单地“强制删除”通过杀死执行器通过:

jenkins.model.Jenkins.instance
                     .computers.collect { c -> c.executors }
                     .collectMany { it.findAll{ it.isBusy() } }
                     .each { it.interrupt() }

在https:///脚本中执行<jenkins.domain.com>

相关问题