我希望能够在jenkins管道中更改windows上的环境变量,并且只有在该管道中,我该如何做?
系统中的环境变量设置为:
XXX_DEV_DATA_DIR = E:\tools\jenkins\workspace\data\XXX-IDM
XXX_DEV_LIBS_DIR = E:\tools\jenkins\workspace\dev\libs
我尝试了withenv命令,但没有效果:
node
{
withEnv(["XXX_DEV_LIBS_DIR=E:\\tools\\jenkins\\workspace\\dev\\libs', 'XXX_DEV_DATA_DIR=E:\\tools\\jenkins\\workspace\\data\\XXX-IDM-Testing"])
{
dir('E:\\tools\\jenkins\\workspace\\samples\\GetXXXSettings\\bin\\x64\\Release')
{
bat 'GetXXXSettings.exe'
}
}
}
getxxxsettings.exe应用程序:
class Program
{
static void Main(string[] args)
{
var data = Environment.GetEnvironmentVariable("XXX_DEV_DATA_DIR");
var libs = Environment.GetEnvironmentVariable("XXX_DEV_LIBS_DIR");
Console.WriteLine("XXX ENVIRONMENT VARIABLES");
Console.WriteLine();
Console.WriteLine($"XXX_DEV_DATA_DIR = {data}");
Console.WriteLine($"XXX_DEV_LIBS_DIR = {libs}");
Console.WriteLine();
Console.WriteLine("END");
}
}
结果如下:
XXX ENVIRONMENT VARIABLES
XXX_DEV_DATA_DIR = E:\tools\jenkins\workspace\data\XXX-IDM
XXX_DEV_LIBS_DIR = E:\tools\jenkins\workspace\dev\libs', 'XXX_DEV_DATA_DIR=E:\tools\jenkins\workspace\data\XXX-IDM-Testing
END
环境变量xxx_dev_data_dir没有变化,我不确定xxx_dev_libs_dir发生了什么。