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 将一些值从一个作业传递到另一个作业_Jenkins_Groovy_Jenkins Plugins_Jenkins Workflow_Jenkins Pipeline - Fatal编程技术网

Jenkins 将一些值从一个作业传递到另一个作业

Jenkins 将一些值从一个作业传递到另一个作业,jenkins,groovy,jenkins-plugins,jenkins-workflow,jenkins-pipeline,Jenkins,Groovy,Jenkins Plugins,Jenkins Workflow,Jenkins Pipeline,我有三个工作,将建立在管道内的工作如下 build 'job1' build 'job2' build 'job3' job2可以接受两个参数。它应该来自作业1。 Letjob1正在某个特定位置创建文件夹(例如:C:\tests)。我需要将创建的文件夹名job1传递到job2。我该怎么做 我还需要将相同的参数传递给job3 在job1和管道中我可以做什么来发送和接收这些参数 我不想编辑job1使其具有生成后选项,以生成带有参数的job2。由于您使用管道,我会在管道中定义目录名,并将其作为参数传

我有三个工作,将建立在管道内的工作如下

build 'job1'
build 'job2'
build 'job3'
job2可以接受两个参数。它应该来自作业1。 Letjob1正在某个特定位置创建文件夹(例如:C:\tests)。我需要将创建的文件夹名job1传递到job2。我该怎么做

我还需要将相同的参数传递给job3

在job1和管道中我可以做什么来发送和接收这些参数


我不想编辑job1使其具有生成后选项,以生成带有参数的job2

由于您使用管道,我会在管道中定义目录名,并将其作为参数传递到所有三个
生成
步骤中。

由于您使用管道,我将在管道中定义目录名,并将其作为参数传递到所有三个
build
步骤中


在运行作业1之前,我不知道目录名

而且,因为您不需要任何生成后操作

你能:

  • 运行job1并将结果目录存储在文本文件中
  • 在job2和job3中,从该文件中读取所需的目录

  • 在运行作业1之前,我不知道目录名

    而且,因为您不需要任何生成后操作

    你能:

  • 运行job1并将结果目录存储在文本文件中
  • 在job2和job3中,从该文件中读取所需的目录
  • 从作业1开始:

    env.SOMETHING = someValue
    
    在job2中定义参数。在主业中,

    def b1 = build 'job1'
    def something = b1.buildVariables.SOMETHING
    build job: 'job2', parameters: …
    
    从作业1开始:

    env.SOMETHING = someValue
    
    在job2中定义参数。在主业中,

    def b1 = build 'job1'
    def something = b1.buildVariables.SOMETHING
    build job: 'job2', parameters: …
    

    在运行作业1之前,我不知道目录名。那么如何通过管道参数传递它呢?在运行job1之前,我不知道目录名。那么我如何通过管道参数传递它呢;def packageJob=构建作业:“包”;舞台"现场",;生成作业:“Live”,参数:[[$class:'StringParameterValue',name:'Live_VERSION',value:value:packageJob.buildVariables.VERSION]]然后它失败,因为传递了null-包作业中的版本使用environmentVariables插件填充,并且它存在于作业的“Environment Variables”HTML页面上。如何访问管道脚本中的版本?我发现packageJob.rawBuild.environment.VERSION正在工作,但它需要在上面列出两个getter。看起来buildVariables只包含我的构建参数-它会包含更多的变量,包括由environmentVariables插件注入的变量吗?如果我执行阶段“包”;def packageJob=构建作业:“包”;舞台"现场",;生成作业:“Live”,参数:[[$class:'StringParameterValue',name:'Live_VERSION',value:value:packageJob.buildVariables.VERSION]]然后它失败,因为传递了null-包作业中的版本使用environmentVariables插件填充,并且它存在于作业的“Environment Variables”HTML页面上。如何访问管道脚本中的版本?我发现packageJob.rawBuild.environment.VERSION正在工作,但它需要在上面列出两个getter。看起来buildVariables只包含我的构建参数-它会包含更多的变量,包括由environmentVariables插件注入的变量吗?