小编Jos*_*att的帖子

Jenkins 管道构建步骤 - getBuildVariables() 返回空映射

我在测试 Jenkinsfile 中有以下代码:

node {
    stage 'Build'
    def job1 = build 'Sample_Freestyle'

    def dur = job1.getDuration()
    println dur

    def vars = job1.getBuildVariables()
    println vars

    def myMap = [k1:'v1', k2:'v2', k3:'v3']
    println myMap
}
Run Code Online (Sandbox Code Playgroud)

据我了解,当我使用构建步骤时,会返回一个 RunWrapper 对象。我正在尝试获取名为“Sample_Freestyle”的测试作业的构建变量,它现在运行一个简单的 Windows 批处理命令:

echo "Hello World"
Run Code Online (Sandbox Code Playgroud)

每当我运行它时,它都会正确执行,但是我留下了一张空地图。我测试了 getDuration() 方法并按预期返回。我在这里查看了 RunWrapper 类,可能是 env 为空(大约第 212 行),但这只是一个假设。

有谁知道为什么我在调用 getBuildVariables() 时会得到一张空地图?我是否以错误的方式解决这个问题?

jenkins jenkins-pipeline

6
推荐指数
2
解决办法
5037
查看次数

标签 统计

jenkins ×1

jenkins-pipeline ×1