[英]Azure DevOps - React App - Set Environment Variables in Release Pipeline
[英]Injection of Golang environment variables into Azure Pipeline
我目前正在將一些構建組件遷移到Azure 管道,並試圖為所有 Golang 相關進程設置一些環境變量。 我希望在管道中執行以下命令:
CGO_ENABLED=0 GOOS=linux GOARCH=amd64 go build [...]
使用提供的Golang集成時,很容易為Go相關進程添加 arguments,但似乎不可能為所有(或每個人) Go進程設置環境變量。 GoTool或默認的Go任務似乎都不支持它,並且似乎也不支持執行帶有 shell 執行的腳本任務。
我還嘗試將環境變量添加到定義所需標志的整個管道過程中,但這些似乎被 Azure 管道本身提供的Go任務忽略了。
是否有辦法將這些標志添加到每個(或單個)go 進程,例如我如何在以下代碼塊中執行此操作(其中標志輸入行由我組成)?
- task: Go@0
inputs:
flags: 'CGO_ENABLED=0 GOOS=linux GOARCH=amd64'
command: 'build'
arguments: '[...]'
workingDirectory: '$(System.DefaultWorkingDirectory)'
displayName: 'Build the application'
根據我能夠找到的信息和許多小時的調試,我最終使用了一種變通方法,即在CmdLine@2
任務中運行golang
命令。 由於GoTool@0
設置管道和環境的方式,這是可能的。
因此,下面的代碼片段適用於我的目的。
steps:
- task: GoTool@0
inputs:
version: '1.19.0'
- task: CmdLine@2
inputs:
script: 'CGO_ENABLED=0 GOOS=linux GOARCH=amd64 go build'
workingDirectory: '$(System.DefaultWorkingDirectory)'
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.