2017-10-18 41 views
0

在VSTS中,我正在嘗試構建Docker鏡像。在我的「構建映像」步驟中,當查看輸出日誌時,我看到黃色文本顯示「由於未設置Build.SourceVersion而無法檢索源代碼」。也許這是因爲我檢查了「包含源標籤」框。我之後立即添加了bash步驟,並試圖在輸出日誌中顯示爲空的echo $(Build.SourceVersion)echo $BUILD_SOURCEVERSIONVSTS - 無法檢索源標籤,因爲Build.SourceVersion未設置

基於https://docs.microsoft.com/en-us/vsts/build-release/concepts/definitions/build/variables?tabs=batch,我應該能夠使用該預定義變量就好了。

enter image description here

可能,而不是「Github上」(我們使用Github的企業)

我缺少的東西是值得指出的是,我已經連接到源部分中的「遠程回購」關於這個「預定義變量」?

回答

0

的解決方法是,你可以通過的Git命令得到(添加命令行任務運行蝙蝠,或PowerShell的任務),然後設置/通過Logging Commands創建一個變量(如tag可變)(例如echo "##vso[task.setvariable variable=tag;]tagvalue")的標籤,之後,您可以在附加圖片標籤 Docker任務的輸入框($(tag))中指定此標籤。

+0

我喜歡這種策略,但有沒有辦法做類似的事情,除了使用bash?例如,有沒有辦法讓我在'bash'中設置一個變量,然後在另一個下游環境中使用它? –

+0

@sg哪個下游環境?你的意思是釋放環境嗎?不,只能在當前的環境中使用。您可以將相同的任務添加到其他環境中以設置變量。 –

+0

另一個構建步驟。如果我在bash構建步驟中使用該變量,並立即添加另一個bash步驟,我無法再使用該變量。我試圖在第一個bash步驟中導出它,但它並沒有持續到第二個bash步驟。 –