共用方式為


Azure Pipelines - Sprint 230 Update

功能

Azure Pipelines 工作使用節點 16

管線中的工作是使用執行器來執行,而 Node.js 用於大部分情況下。 使用節點做為執行器的 Azure Pipelines 工作現在全都使用節點 16。 由於 Node 16 是第一個原生支援 Apple 晶片的 Node 版本,這也會完成 Apple 晶片上 macOS 的完整工作支援。 在 Apple 晶片上執行的代理程式不需要 Rosetta 執行。

隨著節點 16 生命循環結束日期的 推進 ,我們已開始使用節點 20 執行工作。

宣佈淘汰已淘汰的工作

Azure Pipelines 有許多已被取代的工作。 已淘汰的工作將于 2024 年 1 月 31 日淘汰。 為了協助您識別使用已取代工作的管線,如果使用這類工作,管線將會顯示警告。 我們已更新工作 參考 ,以清楚傳達淘汰狀態和淘汰日期。

下列工作已被取代,並開始發出警告:

  • AppCenterDistributeV1、
  • AppCenterDistributeV2
  • AzureMonitorV0
  • ChefKnifeV1
  • ChefV1
  • CondaEnvironmentV1
  • DeployVisualStudioTestAgentV2
  • DotNetCoreInstallerV1
  • IISWebAppDeployment
  • QuickPerfTestV1
  • RunJMeterLoadTestV1
  • RunLoadTestV1
  • SqlServerDacpacDeploymentV1
  • XamarinTestCloudV1

更新您的管線,以在 2024 年 1 月 31 日之前使用較新的工作版本或替代方案。

AzureRmWebAppDeployment 工作支援 Microsoft Entra ID 驗證

AzureRmWebAppDeploymentV3 和 AzureRmWebAppDeployment@4 工作已更新,以支援已停用 基本驗證的 App Service。 如果 App Service 上停用基本驗證,AzureRmWebAppDeploymentV3/4 工作會使用 Microsoft Entra ID 驗證來執行 App Service Kudu 端點的部署。 這需要在代理程式上安裝最新版的 msdeploy.exe,這是 windows-2022/windows-latest 託管代理程式 上的情況(請參閱 工作參考 )。

核准 REST API 的改善

我們已藉由在搜尋結果中包含使用者所屬的群組,來改善指派給使用者的核准。

核准現在包含其所屬管線執行的相關資訊。

例如,下列 GET REST API 呼叫 https://dev.azure.com/fabrikam/FabrikamFiber/_apis/pipelines/approvals?api-version=7.2-preview.2&top=1&assignedTo=john@fabrikam.com&state=pending 會傳回

{
    "count": 1,
    "value":
    [
        {
            "id": "7e90b9f7-f3f8-4548-a108-8b80c0fa80e7",
            "steps":
            [],
            "status": "pending",
            "createdOn": "2023-11-09T10:54:37.977Z",
            "lastModifiedOn": "2023-11-09T10:54:37.9775685Z",
            "executionOrder": "anyOrder",
            "minRequiredApprovers": 1,
            "blockedApprovers":
            [],
            "_links":
            {
                "self":
                {
                    "href": "https://dev.azure.com/fabrikam/26dcfaeb-d8fe-495c-91cb-fec4acb44fbb/_apis/pipelines/approvals/7e80b987-f3fe-4578-a108-8a80c0fb80e7"
                }
            },
            "pipeline":
            {
                "owner":
                {
                    "_links":
                    {
                        "web":
                        {
                            "href": "https://dev.azure.com/buildcanary/26dcfaeb-d8fe-495c-91cb-fec4acb44fbb/_build/results?buildId=73222930"
                        },
                        "self":
                        {
                            "href": "https://dev.azure.com/buildcanary/26dcfaeb-d8fe-495c-91cb-fec4acb44fbb/_apis/build/Builds/73222930"
                        }
                    },
                    "id": 73222930,
                    "name": "20231109.1"
                },
                "id": "4597",
                "name": "FabrikamFiber"
            }
        }
    ]
}

略過核准和檢查

核准和檢查 有助於保護對重要資源的存取,例如服務連線、存放庫或代理程式組件區。 常見的使用案例是部署至生產環境時使用核准和檢查,而您想要保護 ARM 服務連線。

假設您已在服務連線上新增下列檢查:核准、上班時間檢查和叫用 Azure 函式檢查(以強制執行不同區域之間的延遲)。

現在,假設您必須執行 Hotfix 部署。 您啟動管線執行,但不會繼續,它會等候大部分的檢查完成。 您無法等待核准和檢查完成。

在此短期衝刺中,我們可讓您略過執行中的核准和檢查,讓您可以完成 Hotfix。

您可以略過執行核准、上班時間、叫用 Azure 函式和叫用 REST API 檢查。

略過核准。

Screenshot of Bypass an Approval.

略過上班時間檢查。

Screenshot of Bypass Business Hours check.

略過叫用 Azure 函式檢查。 略過上班時間檢查。

Screenshot of Bypass Invoke Azure Function check.

略過檢查時,您可以在 [檢查] 面板中看到它。

Screenshot of check bypassed.

只有當您是已定義檢查之資源的管理員istrator 時,才能略過檢查。

支援必要範本檢查中的 GitHub 企業伺服器

範本 是一種安全性機制,可讓您控制組織中管線的階段、作業和步驟。

[需要範本檢查 ] 可讓您強制管線從一組核准的範本延伸,再存取受保護的資源,例如代理程式組件區或服務連線。

從這個短期衝刺開始,您可以指定位於 GitHub Enterprise Server 存放庫中的範本。

Screenshot of required YAML template.

重新執行叫用 Azure 函式檢查

假設您在多個階段部署系統。 在部署第二個階段之前,會先進行核准和叫用 Azure 函式檢查,以在系統已部署的部分上執行一個理智檢查。

檢閱核准要求時,您會注意到兩天前已執行理智檢查。 在此案例中,您可能會注意到另一個會影響理智檢查結果的部署。

透過此更新,您可以重新執行叫用 Azure 函式和叫用 REST API 檢查。 這項功能僅適用于成功且沒有重試的檢查。

Screenshot of dynamic check.

注意

只有當您是已定義檢查之資源的管理員istrator 時,才能重新執行檢查。

下一步

注意

這些功能將在未來兩到三周內推出。

前往 Azure DevOps 並查看。

如何提供意見反應

我們很樂意聽到您對於這些功能的看法。 使用說明功能表來回報問題或提供建議。

Make a suggestion

您也可以在 Stack Overflow 上的 社群取得建議和您的問題。