2015-10-14 155 views
3

我在TFS 2015中爲自己的構建添加了一個自定義變量,但是,在構建運行時,該變量不會出現在環境變量中。我已經在PowerShell腳本運行TFS 2015不包含在環境變量中的自定義構建變量

Get-ChildItem Env:

驗證了這一點。有大量有關預定義構建變量的文檔,但有關如何訪問自定義變量的文檔非常令人失望。任何幫助,將不勝感激。

回答

6

所以我想通了。

我最初命名我的變量OCTOPUS_API_KEY。我想,因爲我只能作爲環境變量訪問它,所以我可能會使用env var命名約定。

顯然,您定義的自定義變量的名稱會被某些內部未記錄的規則described here轉換。

基於此,我將該變量重命名爲octopus.api.key,並將其正確轉換爲OCTOPUS_API_KEY環境變量幷包含在構建中。

看起來,應用於變量名的變換使它們變得友好並不實際處理已經處於正確格式的變量。

0

構建變量的文檔是now available並確實描述了在問題中觀察到的行爲。

所有的變量都還遠銷環境大寫和 任何._取代。在腳本中,您可以通過環境 引用變量,即根據操作系統,即%VARIABLE_NAME%,$VARIABLE_NAME, $env:VARIABLE_NAME

還值得注意的是,標記爲「祕密」的變量不會導出爲環境變量。