共用方式為


組態變數和系統變數

通常當您部署應用程式時,都會需要存取指令碼的組態或系統設定。 這樣一來,當值會依據組態、組建、伺服器或版本而變更時,您就不需要在多個位置以硬式編碼的方式加入值。 若要避免以硬式編碼的方式加入值,您可以透過 Release Management for Visual Studio 2013 Update 4,針對 vNext 版本,在您的指令碼中使用組態和系統變數。

組態變數

組態變數提供可重複使用且可自訂的設定值,可在動作執行期間使用。 您可以在伺服器、元件及全域設定組態變數和預設值,然後在您的 PowerShell 指令碼和組態指令碼中使用那些值。 而且,如果您不想要在部署期間使用預設值,也可以將其覆寫。 使用組態變數的範例之一,就是設定用來將應用程式部署在伺服器上的使用者名稱和密碼。

組態變數可以設定在全域、伺服器、元件和動作層級。

  • 全域組態變數:透過 [系統管理] > [設定] > [組態變數] 來設定。 此設定會套用於每個地方。

  • 伺服器組態變數:選取 [設定路徑] > [伺服器],選取伺服器,然後選取 [組態變數],以進行設定。 此設定會套用於將應用程式部署至伺服器的動作。 適用於伺服器特定變數,例如使用者名稱和密碼。

  • 元件組態變數:選取 [設定應用程式] > [元件],選取元件,然後選取 [組態變數],以進行設定。 此設定會套用於使用元件的動作。

  • 動作組態變數:在 [發行範本] 設計工具中設定,此設定會套用於動作。

當一個組態變數名稱用於多個層級時,由高至低的優先順序為 [組態指令碼檔案] > [動作] > [元件] > [伺服器] > [全域]。

若要管理組態變數,在 [發行範本] 和 [發行] 檢視的左下角,有名為 [組態變數] 和 [資源變數] 的索引標籤。

[組態變數] 索引標籤會針對每個階段顯示對動作生效的組態變數。

組態變數

[資源變數] 索引標籤會顯示針對全域、伺服器及元件設定的組態變數和值。 (這些都是目前的值,不是上次的快照。)對資源變數的變更會隨著開始新部署的進行中發行而生效。

資源變數

若要在動作中加入組態變數,請在發行範本設計工具中開啟活動,按一下 [自訂組態] 區段中的下拉箭頭,並針對組態變數的類型指定 [標準] 或 [已加密]。 (如果使用 [已加密],請務必在您部署應用程式的伺服器上設定 HTTPS 接聽程式。)

組態變數類型

輸入新變數的名稱,並提供值。

建立自訂組態變數

若要覆寫資源變數中的值,請按一下 + 符號,然後按一下 [自訂組態] 區段中的下拉箭頭。 選取要自訂的變數,並提供值。

設定自訂組態值

系統變數

除了組態設定之外,您的指令碼可能也需要存取系統設定。 例如,如果當您將應用程式部署至生產環境時,您的指令碼需要執行特殊動作,則指令碼可以檢查環境變數。 可用的系統變數如下:

  • ApplicationPath 複製元件的目的地路徑,包括元件名稱。

  • ApplicationPathRoot 複製元件的目的地路徑。

  • BuildDefinition 元件的組建定義。

  • BuildDirectory 元件的組建目錄。

  • BuildNumber 元件的組建編號。

  • Environment 發行的環境。

  • PackageLocation 複製元件的來源路徑。 若為放在標準伺服器的組建,路徑會指向 container-id。 若為放在 Azure 的組建,路徑會指向儲存體二進位大型物件 (Blob) GUID。

  • ReleaseId 發行的 ID;這是由 Release Management 指派。

  • ReleaseNumber 發行的號碼。

  • Stage 發行的階段。

  • Tag 用來將執行動作之伺服器分組的標記。

  • TeamProject 元件的 Team 專案。

  • TFSUrl 元件的 TFS URL。

在指令碼中使用組態或系統變數時,請在變數名稱前面加上 $ 前置字元。 例如:$Stage

請注意,可以取消指派值。 例如,如果您要將應用程式部署至沒有用標記分組的伺服器,就會取消指派 $Tag 變數的值。