如何在詹金斯的“修剪过时的远程跟踪分支”上执行代码?

xen*_*ide 3 jenkins jenkins-pipeline jenkins-declarative-pipeline

当删除分支时,我想对作业创建的工件(例如 AMI、docker 镜像、terraform 服务)等执行额外的清理代码。我正在使用声明性管道,是否有挂钩或插件可以让我实现此目的?

Rya*_*nao 6

在“管道”部分的“其他行为”下有一个选项。请注意,此处选择了 SCM 定义中的管道脚本。

来自 SCM 的管道脚本

这也可以在管道脚本中通过结帐步骤完成。 https://jenkins.io/doc/pipeline/steps/workflow-scm-step/

$class: PruneStaleBranch

使用 Jenkins 片段生成器生成的示例:

checkout([$class: 'GitSCM', branches: [[name: '*/master']], 
doGenerateSubmoduleConfigurations: false, extensions: [[$class: 
'PruneStaleBranch']], submoduleCfg: [], userRemoteConfigs: 
[[credentialsId: 'credential-id-here', url: 'git@github.com:my-
repo.git']]])
Run Code Online (Sandbox Code Playgroud)