我有.env文件(大约有300个),我想访问VSTS任务中的env变量(我们不打算使用现有的变量组)。我找到了https://github.com/tonerdo/dotnet-env。
当我访问
时,我已经从CMD行恢复到此Feed并安装了pkg,DotNetEnv.Env.Load("./path/to/.env");
我知道
2018-08-22T09:46:25.1533640Z ##[command]"C:\Windows\system32\cmd.exe" /D /E:ON /V:OFF /S /C "CALL "E:\agent\_work\_temp\6af04df4-4b54-4cd0-89e7-ccc483b488e8.cmd""
2018-08-22T09:46:25.2116417Z 'DotNetEnv.Env.Load' is not recognized as an internal or external command,
2018-08-22T09:46:25.2119634Z operable program or batch file.
2018-08-22T09:46:25.2166604Z 'Loaded' is not recognized as an internal or external command,
2018-08-22T09:46:25.2166869Z operable program or batch file.
2018-08-22T09:46:25.3735465Z ##[error]Cmd.exe exited with code '1'. `
我的Neget任务-
2018-08-22T09:46:19.2173991Z [command]C:\Windows\system32\chcp.com 65001
2018-08-22T09:46:19.2235760Z Active code page: 65001
2018-08-22T09:46:19.3595127Z Detected NuGet version 4.1.0.2450 / 4.1.0
2018-08-22T09:46:19.3676596Z SYSTEMVSSCONNECTION exists true
2018-08-22T09:46:19.7814317Z Saving NuGet.config to a temporary config file.
2018-08-22T09:46:19.7893967Z [command]E:\agent\_work\_tool\NuGet\4.1.0\x64\nuget.exe sources Add -NonInteractive -Name https://www.nuget.org/packages/DotNetEnv/ -Source https://aiz-alm.pkgs.visualstudio.com/_packaging/https%3A%2F%2Fwww.nuget.org%2Fpackages%2FDotNetEnv%2F/nuget/v3/index.json -ConfigFile E:\agent\_work\r14\a\Nuget\tempNuGet_4147.config
2018-08-22T09:46:20.5248516Z Package Source with Name: https://www.nuget.org/packages/DotNetEnv/ added successfully.
2018-08-22T09:46:20.5295503Z [command]E:\agent\_work\_tool\NuGet\4.1.0\x64\nuget.exe sources Add -NonInteractive -Name NuGetOrg -Source https://api.nuget.org/v3/index.json -ConfigFile E:\agent\_work\r14\a\Nuget\tempNuGet_4147.config
2018-08-22T09:46:21.2957596Z Package Source with Name: NuGetOrg added successfully.
2018-08-22T09:46:21.2964479Z Saving NuGet.config to a temporary config file.
2018-08-22T09:46:21.3552331Z ##[section]Finishing: NuGet restor`
请咨询。
谢谢
答案 0 :(得分:0)
您找到的包是一个.Net库,应该像C#一样用于编码,不能直接从CMD调用。
要在VSTS Build中使用env文件,可以添加Power-Shell脚本任务并使用powershell加载环境文件。例如:Script Smaple
答案 1 :(得分:0)
您应该将您的项目配置为使用dotenv,然后向上搜索从汇编路径到根目录的目录,看看是否有.env,如果存在,然后将其加载...这很可惜,不是像其他平台一样,.net的dotenv的默认行为。
此外,您还可以在VSTS / Azure DevOps中使用管道的“库”区域来指定环境变量,然后将它们绑定到有问题的管道,并且将为您的任务加载它们。