有没有办法在不使用额外插件的情况下将变量从bash脚本传递到Jenkinsfile

时间:2019-07-02 06:23:34

标签: jenkins-pipeline

我正尝试在我的Jenkinsfile(jenkins管道)中使用bash脚本中声明的变量,而不使用诸如EnvInject插件之类的额外插件 请帮助,任何想法将不胜感激

2 个答案:

答案 0 :(得分:1)

您需要将这些变量输出到Bar文件之类的文件中。然后使用管道步骤readProperties / readYaml读取Jenkinsfile中的Map。

Property/Yaml

答案 1 :(得分:0)

我已经完成了类似的工作,您可以将Shell中的变量存储到工作区中的文件中,然后退出shell块,以常规方式读取文件以将键值对加载到您的环境中

类似的东西:

            def env_file = "${WORKSPACE}/shell_env.txt"
            echo ("INFO: envFileName = ${env_file}")
            def read_env_file = readFile env_file
            def lines = read_env_file.readLines()
            lines.each { String line ->
                def object = line.split("=")
                env.object[0] = object[1]
            }