在读取控制台日志行/值后设置Jenkins变量——或者——使用Jenkins调用的脚本/命令使用的变量

在读取控制台日志行/值后设置Jenkins变量——或者——使用Jenkins调用的脚本/命令使用的变量,jenkins,set,environment-variables,jobs,Jenkins,Set,Environment Variables,Jobs,我不需要以下内容: 如何设置Jenkins环境变量或 如何在Jenkins/windowsshell/ant/etc脚本中使用环境变量 我需要的恰恰相反 总结: 1.我有一份詹金斯的工作:ABC_Build 2.此作业调用一个.bat文件(该文件调用一个ANT代码/目标,用于打包/构建 构建)。当我们创建一个构建时,这个作业知道新的构建标签名和名称 ANT将其存储在一个名为“new.build.label”的变量中。使用的文件是build.xml (新手注意:如果您想调用许多Windows命令(

我不需要以下内容:

  • 如何设置Jenkins环境变量或
  • 如何在Jenkins/windowsshell/ant/etc脚本中使用环境变量
  • 我需要的恰恰相反

    总结: 1.我有一份詹金斯的工作:ABC_Build 2.此作业调用一个.bat文件(该文件调用一个ANT代码/目标,用于打包/构建 构建)。当我们创建一个构建时,这个作业知道新的构建标签名和名称 ANT将其存储在一个名为“new.build.label”的变量中。使用的文件是build.xml

    (新手注意:如果您想调用许多Windows命令(.bat/.cmd或 创建windows shell的命令)然后,您应该使用“call
    script.bat-Dparam1-Dparam2…“方式)

  • 现在,这个作业调用另一个.bat文件(调用ANT代码/目标)并使用一个 由first.bat文件/ANT包目标生成的参数值的 调用(即“new.build.label”)。因为这是一个单独的.bat命令调用来调用新的 在ANT代码/目标的会话中,我需要在 这一步的要求。这里使用的文件是deploy.xml

  • 基本上,我想看看如何在Jenkins中设置变量,可以使用: A.读取Jenkins作业的控制台输出,同时响应 标准输出/控制台输出中的新生成标签。 B任何其他方式,我可以使用“new.build.label”ANT设置jenkins变量 变量(一旦first.bat/ANT包目标完成),我就可以调用它了 执行部署的第二个.bat/.cmd/ANT调用。不幸的是,我不能两者兼得 同时打包/部署

    我也不想知道为什么不能从first ANT调用target deploy 会话时,我已经知道“new.build.label”的值作为我的主要请求是:

    如何使用jenkins调用的脚本之一(ANT/Jelly/Groovy/Maven/etc)使用的“变量”设置jenkins变量


  • 您可以通过在Jenkins构建步骤之间传递环境变量。在您的特定情况下,以下可能是最好的方法:

  • 第一个ANT应将new.build.label回显到一个属性文件中,该文件可由EnvInject插件读取,例如:

    <echo message="new.build.label=${new.build.label}" file="envars.props" />
    
    
    
  • 创建注入环境变量生成步骤,并将“属性文件路径”设置为
    envars.props
    (确保正确处理路径)。然后new.build.label将作为环境变量提供给其余的构建步骤


  • 顺便说一下,我认为在Jenkins中从批处理文件调用ANT不是一个好的做法。请改用ANT构建步骤。

    谢谢。比如说,Jenkins的工作是成功创建构建,并将生成的构建存储在一个名为“publish.label”的变量中,ANT在构建过程中使用了该变量。现在我想在Jenkins的“编辑电子邮件通知”主题行中发送此值。我该怎么做?