共用方式為


使用 Azure Pipelines 將設定匯入至 應用程式組態

Azure 應用程式組態 匯入工作會將機碼值從組態檔匯入至您的 應用程式組態 存放區。 此工作可在管線內啟用完整的圓形功能,因為您現在可以從 應用程式組態 存放區匯出設定,並將設定匯入至 應用程式組態 存放區。

必要條件

建立服務連線

服務連線可讓您從 Azure DevOps 專案中存取 Azure 訂用帳戶的資源。

  1. 在 Azure DevOps 中,移至包含目標管線的專案。 在左下角中,選取 [專案設定]

  2. 管線 下方,選取服務連線。 在右上角中,選取 [新的服務連線]

  3. 在 [新的服務連線] 中,選取 [Azure Resource Manager]

    顯示從 [新增服務連線] 下拉式列表中選取 [Azure Resource Manager] 的螢幕快照。

  4. 在 [驗證方法] 對話框中,選取 [工作負載身分識別同盟],以建立新的工作負載身分識別同盟,或選取 [工作負載身分識別同盟] 來使用現有的工作負載身分識別同盟

  5. 輸入您的訂用帳戶、資源群組,以及服務連線的名稱。

如果您已建立新的服務主體,請尋找指派給服務連線的服務主體名稱。 您將在下一個步驟中將新的角色指派新增至此服務主體。

  1. 移至 [專案設定]>[服務連線]

  2. 選取新的服務連線。

  3. 選取 [管理服務主體]

  4. 請注意 [顯示名稱] 中的值。

    顯示服務主體顯示名稱的螢幕快照。

新增角色指派

為工作中正在使用的認證指派適當的應用程式組態角色指派,以便工作可以存取應用程式組態存放區。

  1. 移至您的目標應用程式組態存放區。

  2. 在左側功能表中,選取 [存取控制 (IAM)]

  3. 在右側窗格中,選取 [新增角色指派]

    顯示 [新增角色指派] 按鈕的螢幕快照。

  4. 針對 [角色],選取 [應用程式組態資料擁有者]。 此角色可讓工作從應用程式組態存放區讀取,也可以使其寫入至應用程式組態存放區。

  5. 您在上一區段有建立服務連線,請選取與其相關的服務主體。

    顯示 [新增角色指派] 對話框的螢幕快照。

  6. 選取檢閱+指派

在組建中使用

本節涵蓋如何在 Azure DevOps 建置管線中使用 Azure 應用程式組態 匯入工作。

  1. 按一下 [管線]>[管線] 以瀏覽至組建管線的頁面。 如需組建管線的詳細資訊,請移至 建立您的第一個管線
    • 如果您要建立新的組建管線,請在進行到流程的最後一個步驟時,在 [檢閱] 索引標籤上,選取管線右側的 [顯示小幫手]

      此螢幕快照顯示新管線的 [顯示助理] 按鈕。

    • 如果您使用現有的組建管線,請按一下右上方的 [編輯] 按鈕。

      顯示現有管線 [編輯] 按鈕的螢幕快照。

  2. 搜尋 Azure 應用程式組態 匯入工作。

    顯示 [新增工作] 對話框的螢幕快照,其中包含搜尋方塊中的 [Azure 應用程式組態 匯入]。

  3. 設定工作的必要參數,以將機碼值從組態檔匯入至 應用程式組態 存放區。 參數的說明可在 [參數] 區段,以及每個參數旁邊的工具提示中取得

    顯示應用程式組態匯入工作參數的螢幕快照。

  4. 儲存並將一個組建排入佇列。 建置記錄會顯示執行工作期間發生的任何失敗。

在發行版本中使用

本節涵蓋如何在 Azure DevOps 發行管線中使用 Azure 應用程式組態 匯入工作。

  1. 選取 [管線]>[發行],瀏覽至發行管線的頁面。 如需發行管線的詳細資訊,請移至 建立您的第一個發行管線
  2. 選擇現有的發行管線。 如果您沒有發行管線,請選取 [+ 新增] 以建立新的發行管線。
  3. 選取右上角的 [編輯] 按鈕以編輯發行管線。
  4. 在 [工作] 的下拉式清單中,選擇您要新增工作的 [階段]。 如需階段的詳細資訊,請參閱 新增階段、相依性及條件

    顯示 [工作] 下拉式清單中所選階段的螢幕快照。

  5. 按一下在您要加入新工作作業旁邊的 +

    顯示作業旁加號按鈕的螢幕快照。

  6. 在 [新增工作] 對話框中,輸入 Azure 應用程式組態 [匯入] 搜尋方塊並加以選取。
  7. 設定工作內的必要參數,以將密鑰/值從組態檔匯入至 應用程式組態 存放區。 參數的說明可在 [參數] 區段,以及每個參數旁邊的工具提示中取得
  8. 儲存發行並將其排入佇列。 發行記錄會顯示執行工作期間遇到的任何失敗。

參數

應用程式組態 匯入工作會使用下列參數:

  • Azure 訂用帳戶:包含可用 Azure 服務連線的下拉式清單。 若要更新並重新整理可用的 Azure 服務連線清單,請按文字方塊右側的 [重新整理 Azure 訂用帳戶] 按鈕。
  • 應用程式組態端點:這個下拉式清單會載入所選訂用帳戶下的可用組態存放區端點。 若要更新並重新整理可用的組態存放區端點清單,請按文字方塊右側的 [重新整理應用程式組態端點] 按鈕。
  • 組態檔路徑:組態檔的路徑。 組態檔路徑參數會從檔案存放庫的根開始。 您可以透過瀏覽組建成品來選取組態檔。 (文字方塊右側的 ... 按鈕)。 支援的檔案格式取決於檔案內容設定檔。 針對預設設定檔,支援的檔格式為 yaml、json 和 properties。 針對 KvSet 設定檔,支援的檔案格式為 json。
  • 檔案內容設定檔:組態檔的內容設定檔。 預設值為 [預設]
    • 預設:是指應用程式可以直接取用的傳統組態檔格式。
    • Kvset:是指檔案結構描述,其中包含應用程式組態索引鍵/值的所有屬性,包括索引鍵、值、標籤、內容類型和標記。 使用 Kvset 配置檔時,工作參數 'Separator'、'Label'、'Content type'、'Prefix'、'Tags' 和 'Depth' 不適用。
  • 匯入模式:預設值為 [全部]。 決定匯入索引鍵/值時的行為。
    • 全部:將組態檔中的所有索引鍵/值匯入至應用程式組態。
    • 忽略相符項:僅匯入應用程式組態中沒有相符索引鍵/值的設定。 比對索引鍵/值會被視為具有相同索引鍵、標籤、值、內容類型和標籤的索引鍵/值。
  • 試執行:預設值為 [未核取]
    • 已核取:不會對 應用程式組態 執行任何更新。 相反地,在正常執行中執行的任何更新都會列印到主控台以供檢閱。
    • 未核取:執行任何更新來 應用程式組態,而且不會列印到主控台。
  • 分隔符號:用來壓平合併 .json 和 .yml 檔案的分隔符號。
  • 深度:.json和.yml檔案扁平化為的深度。
  • 前置詞:附加至匯入至 應用程式組態 存放區之每個索引鍵開頭的字串。
  • 卷標:新增至每個索引鍵/值作為 應用程式組態 存放區內捲標的字串。
  • 內容類型:新增至每個索引鍵/值作為 應用程式組態 存放區內內容類型的字串。
  • 標記:格式為 的 {"tag1":"val1", "tag2":"val2"}JSON 物件,它會定義新增至匯入至 應用程式組態 存放區之每個索引鍵/值的標記。
  • 刪除組態檔中未包含的索引鍵/值:預設值為 [未核取]。 此選項的行為取決於組態檔內容設定檔。
    • 已核取
      • 默認內容配置檔:移除 應用程式組態 存放區中符合指定前置詞和標籤的所有索引鍵/值,再從組態檔匯入新的索引鍵/值。
      • Kvset 內容設定檔:從組態檔匯入新的索引鍵/值之前,先移除未包含在組態檔中的 應用程式組態 存放區中的所有索引鍵/值。
    • 未核取:將組態檔中的所有索引鍵/值匯入 應用程式組態 存放區,並將其他所有專案保留在 應用程式組態 存放區中。

疑難排解

如果發生非預期的錯誤,可以將管線變數 system.debug 設定為 true 以啟用偵錯記錄。

常見問題集

如何上傳多個設定檔?

若要將多個組態檔匯入至 應用程式組態 存放區,請在相同的管線內建立 Azure 應用程式組態 匯入工作的多個實例。

如何使用這項工作建立 Key Vault 參考或功能旗標?

根據您選取的檔案內容配置檔,請參閱組態檔 Azure 應用程式組態 支援中的範例。

為什麼我在嘗試將索引鍵/值匯入至我的組態存放區時收到 409 錯誤?

如果工作嘗試移除或覆寫鎖定在 應用程式組態 存放區中的索引鍵/值,就會發生 409 衝突錯誤訊息。

後續步驟

如需參數的完整參考,或在 YAML 管線中使用這個管線工作,請參閱下列檔。

若要瞭解如何從 應用程式組態 存放區導出索引鍵/值,並將其設定為 Azure 管線變數,請繼續進行下列檔。

若要瞭解如何在 應用程式組態 存放區中建立快照集,請繼續進行下列檔。