【问题标题】:How can I concatenate variables in Jenkins file如何在 Jenkins 文件中连接变量
【发布时间】:2023-04-06 16:09:01
【问题描述】:

我有一个 Jenkinsfile,我想在构建执行期间从文件中加载变量,我还想将变量连接成一行并打印出来。

pipeline {
    agent any
    stages {
        stage("foo") {
            steps {
                script {
                    env.name = readFile 'name.txt' 
                    env.tag = readFile 'tag.txt'
                }
                echo "${env.name}:${env.tag}"
            }
        }
    }
}

name.txt 包含 Uzodimma
path.txt 包含最新的

当我运行管道时,我得到
乌佐迪玛
:最新的

我期待
乌佐迪玛:最新的

有没有办法在 Jenkinsfile 中做到这一点?

【问题讨论】:

    标签: jenkins jenkins-pipeline jenkins-groovy jenkins-cli


    【解决方案1】:

    这里的问题是您的文件中包含换行符,因此它们作为字符串的一部分分配给您的变量。您可以使用trim 方法删除换行符,因为readFile 返回一个字符串:

    env.name = readFile('name.txt').trim()
    env.tag = readFile('tag.txt').trim()
    

    返回的标准输出将如您所愿。

    【讨论】:

      猜你喜欢
      • 2016-11-24
      • 1970-01-01
      • 1970-01-01
      • 2012-07-31
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多