首页 > 解决方案 > 在 Docker 代理上使用 Jenkins 管道文件参数

问题描述

我正在尝试使用要在基于 docker 的代理上使用的文件类型参数对 Jenkins 管道进行参数化。

添加了a_file参数,环境变量在执行时可用,但文件不可用。

在基于 Docker 的代理上使用文件参数是否有任何特定步骤或方法?

管道的摘录:

pipeline {
   agent { label 'master' }

   stages {
        stage('Use File parameter') {
            agent { 
                docker { 
                    image 'node:10'
                }
            }
            steps {
                sh 'env'
                sh 'ls ${a_file}'
...

标签: dockerjenkinsjenkins-pipeline

解决方案


这似乎是默认文件参数的已知限制(https://issues.jenkins.io/browse/JENKINS-29289https://issues.jenkins.io/browse/JENKINS-27413)。

另一种解决方案是使用来自File Parameters插件的 Stashed File 或 base64 File 参数类型。


推荐阅读