一尘不染

如何将Windows批处理变量作为构建参数导出到Jenkins中的以下步骤?

jenkins

在Jenkins中,是否可以将Windows批处理变量导出为构建
参数?我知道在Windows批处理块中使用构建参数,我
经常使用它。

例如,我有一个Windows批处理块,它创建一个变量,例如A,例如

SET A="MyVar"

是否可以在运行MSBuild时使用它,以(/p:AssemblyName=%A%或)的(有效)语法像传递一个构建参数一样传递它/p:AssemblyName=${A}

这些似乎都不起作用(我的变量始终为空)。


更新:@Tuffwer建议使用EnvInject插件。我一直在
尝试,但是到目前为止没有成功。这是我创建的一个示例,用于说明我的
初衷

我想创建一个变量,其内容将根据在
构建参数之一中应用的条件来确定。然后,我想使用 / p:[Key] = [Value]语法将该
变量作为MsBuild命令行的参数
(如果我
没有记错的话,则需要Jenkins MsBuild插件)。

现在使用EnvInject,我仍然无法正常工作。我需要
在进一步的构建步骤中引用Windows批处理变量的值。

更新II:我变成了Environment ScriptPlugin ,它为我完成了工作。


阅读 652

收藏
2020-07-25

共1个答案

一尘不染

Tuffwer建议使用EnvInject插件,但我尝试未能成功达到我的预期。我编辑了包括
EnvInject尝试在内的帖子,但与此同时又去寻找其他解决方案。

这次,我遇到了Environment Script Plugin,它为我完成了工作。

在此处输入图片说明

脚步:

标记 Generate environment variables from script
对于要“导出”的每个变量,您需要发出一条echo [varName]=[value]语句。
就这样。然后,我的构建将根据构建参数值创建一个名为TRUE .exe
FALSE .exe 的程序集MyBool

2020-07-25