我有一个可以自动构建和部署的应用程序。
当前流量:
Git push-> Azure(构建)管道创建工件-> Azure Release管道拾取工件,并使用“复制文件”将其部署在DigitalOcean服务器上,然后进入命令行。
我需要在命令行中进行一些自动配置,这些自动配置需要每个构建都唯一的环境变量。
如何从管道访问环境变量并将其以某种方式传递到发布管道,以便可以在命令行的命令中使用它?
用于导出环境变量的NPM命令:
"releasecustom": "export VUE_APP_SENTRY_RELEASE=$(UniqueValue) && node
scripts/createreleasesentry.js && npm run build && node scripts/finalizereleasesentry.js",
答案 0 :(得分:2)
我有点担心开箱即用不支持此功能。您可以做的就是使用powershell任务(or use extension for this)在文件中写下您的值。
New-Item -Path $(Build.ArtifactStagingDirectory)/vardrop -Name "variables.txt" -ItemType "file" -Value "This is a text string."
然后,您必须将其发布为工件。
- task: PublishBuildArtifacts@1
inputs:
pathToPublish: '$(Build.ArtifactStagingDirectory)/vardrop'
artifactName: vardrop
接下来,您需要下载工件并读取此文件并设置变量(使用powershell任务)。
这里有一个示例,但是如果文件中的值多于一个值,则需要拆分并分别分配。
echo "##vso[task.setvariable variable=dp]$(cat $(System.ArtifactsDirectory)/vardrop/variables.txt)"