Azure Pipelines - 短期衝刺 246 更新
功能
- Azure Pipelines 裝載代理程式的 Ubuntu 24.04
- 在 Azure 整合測試中使用工作負載身分識別同盟
- 已改善受控識別支援的新 Azure 服務連線建立體驗
- 父階段失敗時執行子階段
Azure Pipelines 裝載代理程式的 Ubuntu 24.04
Ubuntu 24.04 映像現在可供 Azure Pipelines 裝載的代理程式使用。 若要使用此映像,請更新您的 YAML 檔案以包含 vmImage:'ubuntu-24.04'
:
- job: ubuntu2404
pool:
vmImage: 'ubuntu-24.04'
steps:
- bash: |
echo Hello from Ubuntu 24.04
lsb_release -d
注意
映射 ubuntu-latest
標籤將繼續指向 ubuntu-22.04,直到今年晚些時候為止。
在 Azure 整合測試中使用工作負載身分識別同盟
6月,Azure 身分識別連結庫 for.NET、C++、Go、Java、JavaScript 和 Python 新增了工作負載身分識別同盟的支援。 這新增了從 AzureCLI@2 和 AzurePowerShell@5 工作執行的程式代碼,能夠使用 AzurePipelinesCredential
類別向 Microsoft Entra 進行驗證(例如,存取 Azure)。
許多客戶都在從其他工作叫用的整合測試中使用 Azure 身分識別連結庫。 我們現在已將 支援 AzurePipelinesCredential
新增至 DotNetCoreCLI@2、 Maven@4 和 VSTest@3 工作。
您可以將 屬性設定 connectedService
為使用工作負載身分識別同盟設定的 Azure 服務連線。 AzurePipelinesCredential
SYSTEM_ACCESSTOKEN
需要設定 。
- task: DotNetCoreCLI@2
inputs:
command: 'run'
connectedService: <Azure service connection configured with workload identity federation>
env:
SYSTEM_ACCESSTOKEN: $(System.AccessToken)
如需 的詳細資訊 AzurePipelinesCredential
,請參閱此 部落格文章。
已改善受控識別支援的新 Azure 服務連線建立體驗
新的 Azure 服務連線建立體驗可提供更高的彈性和安全性預設值。 它還會將術語與 Microsoft Entra ID 保持一致,以便建立 Microsoft Entra ID 對象的使用者在流覽不同入口網站時進行進一步了解。
建立新的 Azure Resource Manager 服務連線時,現在可在單一整合對話方塊中使用各種設定身分識別的選項,以取代先前使用的不同最上層專案:
身分識別類型 會列出 Azure 服務連線支援的所有驗證配置:
針對應用程式註冊,您可以獨立選取 [認證 ] 做為 工作負載身分識別同盟 或秘密。
Azure 服務連線受控識別支援
您現在可以選取預先存在的受控識別,並用它來設定使用工作負載身分識別同盟的服務連線。 首先, 建立使用者指派的受控識別。
然後,建立 Azure 服務連線,然後選取 受控識別 識別類型。 這會在受控識別上設定同盟身分識別認證。
使用指派給代理程式之受控識別(集區)的選項已重新命名為受控識別(代理程式指派)。 若要避免共用許可權過高的受控識別,建議使用具有工作負載身分識別同盟的受控識別,而不是指派給代理程式集區的受控識別。
如果Microsoft Entra ID 中停用,則受控識別也是無法建立應用程式註冊的用戶建議選項。
若要搭配工作負載身分識別同盟使用受控識別,請先選取保留受控識別的訂用帳戶和資源群組。 這與管線作業中服務連線存取的訂用帳戶不同。 挑選針對工作負載身分識別同盟設定的受控識別。 使用者需要 受控識別參與者 角色或對等許可權,才能在受控識別上建立同盟身分識別認證。
繼續選取將作為服務連線部署範圍的訂用帳戶。
[服務管理參考] 欄位
某些組織需要 應用程式註冊的服務管理參考 ,才能填入 ITSM 資料庫中的相關內容資訊。 如有必要,用戶可以在服務連線建立期間指定此參考。
其他相關資訊
新的 Azure 服務連線建立體驗會在下個月推出。 如需詳細資訊,請參閱
父階段失敗時執行子階段
我們可讓您更輕鬆地使用 Azure Pipelines 繼續部署。 例如,當您使用 Pipelines 跨多個 Azure 區域部署新版本的應用程式時,這非常有用。
假設您需要部署至五個連續的 Azure 區域。 假設您的管線具有每個區域的階段,而每個階段都有一個執行工作的作業 AzureResourceManagerTemplateDeployment
,然後記錄一些遙測。 後者是好的,但不是關鍵。 假設記錄遙測時發生問題。 現在,階段會失敗,且部署會停止。
從這個短期衝刺開始,當階段失敗時,您可以繼續執行其子階段。
下一步
注意
這些功能將在未來兩到三周內推出。
前往 Azure DevOps 並查看。
如何提供意見反應
我們很樂意聽到您對於這些功能的看法。 使用說明功能表來回報問題或提供建議。
您也可以在 Stack Overflow 上的社群取得建議和您的問題。