在Jenkins中,是否可以将Windows批处理变量导出为构建参数?我知道在Windows批处理块中使用构建参数是,我经常使用它。
例如,我有一个Windows批处理块,它创建一个变量,比如说A,就像
一样SET A="MyVar"
是否可以在运行MSBuild时使用它,在/p:AssemblyName=%A%
或/p:AssemblyName=${A}
的(工作)语法中将其作为构建参数传递?
这些似乎都不起作用(我的变量总是空的)。
更新:@Tuffwer建议使用EnvInject插件。我一直在努力,但到目前为止还没有成功。这是我创建的一个示例,用于说明我的原始意图:
我想创建一个变量,其内容将根据其中一个构建参数中应用的条件确定。然后,我想使用该变量作为MsBuild命令行的参数,使用/ p:[Key] = [Value]语法(如果我没有错,则需要Jenkins MsBuild插件)。
我现在还无法使用EnvInject来实现这一点。我需要在进一步的构建步骤中引用windows批处理变量的值。
更新II :我转入Environment Script Plugin,为我完成了这项工作。
答案 0 :(得分:0)
Tuffwer建议使用EnvInject插件,我试过没有成功实现我的意图。我编辑了我的帖子,包括我的EnvInject尝试,但同时又搜索了其他解决方案。
这一次,我遇到Environment Script Plugin,为我做了这份工作。
步骤:
Generate environment variables from script
echo [varName]=[value]
声明。这就是全部。
然后,我的构建会创建一个名为 TRUE .exe或 FALSE .exe的程序集,具体取决于构建参数MyBool
值。