Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/jenkins/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Jenkins 不同构建步骤中的当前构建参数/ENV变量_Jenkins - Fatal编程技术网

Jenkins 不同构建步骤中的当前构建参数/ENV变量

Jenkins 不同构建步骤中的当前构建参数/ENV变量,jenkins,Jenkins,是否可以在构建步骤中定义新的构建参数/ENV变量,以便在下一个步骤中可用 假设我有两个不同的“executeshell”步骤,并希望在第二个步骤中访问第一个步骤中定义的变量 PS:变量的值是在运行时设置的-从第三方资源读取,因此我无法对其进行harcode,因此需要从shell脚本进行设置。插件将为您完成此操作。 它可以配置为预配置步骤或构建步骤。将它放在现有的两个构建步骤之间 更新 在您的情况下,作为第二个构建步骤的一部分,只读取“第三方”文件的值可能更容易: var=$(<3rdpar

是否可以在构建步骤中定义新的构建参数/ENV变量,以便在下一个步骤中可用

假设我有两个不同的“executeshell”步骤,并希望在第二个步骤中访问第一个步骤中定义的变量

PS:变量的值是在运行时设置的-从第三方资源读取,因此我无法对其进行harcode,因此需要从shell脚本进行设置。

插件将为您完成此操作。 它可以配置为
预配置
步骤或
构建
步骤。将它放在现有的两个构建步骤之间

更新

在您的情况下,作为第二个构建步骤的一部分,只读取“第三方”文件的值可能更容易:

var=$(<3rdpartyfile.txt)

var=$(您还可以使用

stage('stage-1') {
    steps {
        script{
        env.variable = ${value};
        }
    }
}

现在,您可以在整个管道中使用变量env.variable了

我如何从第三方资源中设置env变量的值?或者,为了简单起见,从本地文件中设置?因此,有一个文件-我需要将其值设置为env变量。如何使用envirect进行设置?如果该文件的格式为
key=value
,您只需提供是EnvInject插件的文件名,
将在名为
key
的环境变量下可用,该环境变量是此作业运行的全局变量。然后,您可以在第二个构建步骤中引用此环境变量,就像引用任何其他环境变量一样。仔细想想……您可以简单地编写一个脚本作为sec的一部分ond构建步骤将从该文件中读取值…不需要任何插件。您使用的是Windows的Linux吗?这个第三方文件的格式是什么?它是Linux。该文件是一行字符串。因此我需要将其作为一个ENV变量值。它称为“subshell”实际上,以上只是一种读取文件的简写方式。你可以在这里和这里阅读,但这不起作用:我在“trigger other build”插件的“预定义参数”中使用了
ID=$(
,而
$(
东西没有解析为文件内容,而是作为
ID=$(
string:-(