2

我正在使用 kubernetes pod 模板插件运行 jenkins 作业。

在构建的第一阶段,我创建了一些文件,它们正在使用 pod 模板 A,但这些文件似乎没有写入工作区以供其他阶段使用。

例如,第二阶段使用 pod 模板 B 无法看到模板 A 在第一阶段写入的文件。模板 B 在第二阶段将文件写入工作空间,第三阶段的 pod 模板 C 可以看到第二阶段模板 B 写入的那些文件。

这让我相信 pod 模板存在问题,但我已将所有变量、卷挂载和 jnlp 容器完全复制到我的模板 A 中,但它仍然无法正常工作。如果我 kubectl 描述我的 pod,它说所有卷挂载都成功,有什么想法或提示可以调试卷挂载吗?

pipeline {
  agent {
    label "jenkins-nodejs"
  }
  stages {
    stage('first stage'){
        steps{
            container('template A'){
                sh 'echo this file wont be found > fileOne.txt'
            }
        }
    }

    stage('second stage'){
        steps{
            container('template B'){
                // No file found here
                sh 'cat fileOne.txt'
                sh 'echo this file will be found > fileTwo.txt'
            }
        }
    }

    stage('third stage'){
        steps{
            container('template C'){
                // No file found here
                sh 'cat fileOne.txt'

                // File found here
                sh 'cat fileTwo.txt'
            }
        }
    }
  }
  post {
    always {
        cleanWs()
    }
  }
}
4

0 回答 0