如何仅针对 Jenkins 管道 post 条件指定要在 Kubernetes 集群上执行的容器/代理

How to specify a container / agent to execute on Kubernetes cluster for Jenkins pipeline post condition only

我想 运行 我的声明性管道的 post 部分在需要使用特定 docker 图像在 kubernetes pod 上执行的容器内。而且我不知道如何只为 post 设置代理。我正在执行一个特定的 python 脚本,该脚本在 post 条件下发送电子邮件并执行我需要的脚本 python 并在代理上安装 pip,我的 docker 图像有这些先决条件,但我不知道如何在 post 步骤中使用此 docker 图像创建代理。谁能帮帮我?

我的管道示例

post {
failure {
  echo "job failed"
}
success {
  echo "job succeeded"
}
always {
  node(null) {
    #Python script call to send email
  }
}

}

您可以使用 Jenkins Kubernetes 插件为 post 步骤设置 Pod。

 podTemplate(yaml: yamlfile, cloud: cloudName){
    node(POD_LABEL) {
      container(containerName) {
        //steps to perform
      }
    }

有关如何使用 podTemplate 的更多信息,请访问 link: https://www.jenkins.io/doc/pipeline/steps/kubernetes/