Integrace GitHubu – Vylepšené ověřování AB#

S touto aktualizací s radostí nabízíme privátní verzi Preview nejnovějších vylepšení v integraci Azure Boards a GitHubu.

Kromě toho je teď možné, aby správci vynechali spuštění schválení a kontroly, aby dokončili opravu hotfix v Azure Pipelines.

Podrobnosti najdete v poznámkách k verzi.

Všeobecné

Azure Boards

Azure Pipelines

Sestavy

Všeobecné

Nová verze sady SDK webového rozšíření Azure DevOps

V této aktualizaci vydáváme novou verzi sady SDK webového rozšíření Azure DevOps. Klientská sada SDK umožňuje webovým rozšířením komunikovat s rámcem hostitele. Dá se použít k:

  • Upozorněte hostitele, že je rozšíření načtené nebo obsahuje chyby.
  • Získání základních kontextových informací o aktuální stránce (aktuální uživatel, informace o hostiteli a rozšíření)
  • Získání informací o motivu
  • Získání autorizačního tokenu pro použití v volání REST zpět do Azure DevOps
  • Získání vzdálených služeb nabízených rámcem hostitele

Úplné referenční informace k rozhraní API najdete v dokumentaci k balíčku azure-devops-extension-sdk. Tato nová verze poskytuje podporu pro následující moduly:

  • Podpora modulů ES: Sada SDK teď kromě existujících modulů AMD (Asynchronní definice modulu) podporuje moduly ES (ECMAScript). Teď můžete importovat sadu SDK pomocí syntaxe modulu ES, která poskytuje vylepšení výkonu a snižuje velikost aplikace.

  • Zpětná kompatibilita pro moduly AMD: Stávající podpora modulů AMD zůstává nedotčená. Pokud váš projekt používá moduly AMD, můžete je dál používat stejně jako předtím bez jakýchkoli změn.

Jak používat:

Pro moduly ES můžete importovat naše moduly pomocí příkazu import:

import * as SDK from 'azure-devops-extension-sdk';
// Use the module here

Pokud používáte moduly AMD, můžete pokračovat v importu require sady SDK pomocí funkce:

require(['azure-devops-extension-sdk'], function(SDK) {

  // Use the module here
});

Azure Boards

Integrace GitHubu – Vylepšené ověřování AB# (privátní verze Preview)

Začínáme s vylepšeními integrace Boards a GitHubu tím, že řešíme odpovědi robota při propojování pracovních položek pomocí syntaxe AB#. Když pomocí syntaxe propojíte žádost o AB#{ID} přijetí změn, jediným způsobem, jak zjistit, jestli byl odkaz úspěšný, je zobrazením pracovní položky nebo upozorněním na AB#{ID} odkaz.

Dnes spouštíme privátní verzi Preview s několika vylepšeními aplikace Azure Boards na GitHubu, abychom vás mohli lépe informovat, když je odkaz na pracovní položku platný nebo neplatný. To pomáhá identifikovat chybné odkazy a opravit je před sloučením žádosti o přijetí změn.

Screenshots of Team Settings.

Pokud se chcete zúčastnit privátní verze Preview, spojte se s námi přímo prostřednictvím e-mailu. Nezapomeňte uvést název vaší organizace (dev.azure.com/{organization}).

Podívejte se na veřejný plán, kde najdete další informace o nadcházejících funkcích integrace Azure Boards a GitHubu.

Azure Pipelines

Úlohy Azure Pipelines používají Node 16

Úlohy v kanálu se spouští pomocí spouštěče, ve většině případů se používá Node.js. Úlohy Azure Pipelines, které využívají Node jako spouštěč, teď všechny používají Node 16. Vzhledem k tomu, že Node 16 je první verzí Node, která nativně podporuje Apple Silicon, dokončí se také úplná podpora úloh pro macOS na čipu Apple. Agenti běžící na čipu Apple nepotřebují ke spuštění Rosetta.

Vzhledem k tomu, že datum konce životnosti uzlu 16 se přesunulo dopředu, začali jsme spouštět úkoly s Node 20.

Oznámení o vyřazení zastaralých úkolů

Azure Pipelines má mnoho zastaralých úloh. Zastaralé úkoly budou vyřazeny 31. ledna 2024. Aby bylo možné identifikovat kanály, které používají zastaralé úlohy, zobrazí se v kanálech upozornění, pokud se taková úloha použije. Aktualizovali jsme odkaz na úkol tak , aby jasně vyjadřoval stav vyřazení a datum vyřazení.

Následující úlohy jsou zastaralé a začnou generovat upozornění:

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

Aktualizujte kanály tak, aby používaly novější verzi úlohy nebo alternativu před 31. lednem 2024.

Úloha AzureRmWebAppDeployment podporuje ověřování ID Microsoft Entra

Úlohy AzureRmWebAppDeploymentV3 a AzureRmWebAppDeployment@4 byly aktualizovány tak, aby podporovaly službu App Service se zakázaným základním ověřováním. Pokud je ve službě App Service zakázané základní ověřování, úlohy AzureRmWebAppDeploymentV3/4 používají ověřování Microsoft Entra ID k provádění nasazení do koncového bodu Kudu služby App Service. To vyžaduje nejnovější verzi msdeploy.exe nainstalované v agent, což je případ v systému windows-2022/windows-latest hostovaných agentů (viz referenční informace k úloze).

Vylepšení rozhraní SCHVÁLENÍ REST API

Vylepšili jsme vyhledání schválení přiřazených uživateli zahrnutím skupin, do nichž uživatel patří do výsledků hledání.

Schválení teď obsahují informace o spuštění kanálu, do které patří.

Například následující volání https://dev.azure.com/fabrikam/FabrikamFiber/_apis/pipelines/approvals?api-version=7.2-preview.2&top=1&assignedTo=john@fabrikam.com&state=pending rozhraní GET REST API vrátí

{
    "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"
            }
        }
    ]
}

Obcházení Schválení a kontrol

Schválení a kontroly pomáhají chránit přístup k důležitým prostředkům, jako jsou připojení služeb, úložiště nebo fondy agentů. Běžným případem použití je použití Schválení a kontrol při nasazování do produkčního prostředí a chcete chránit připojení služby ARM.

Řekněme, že jste do připojení služby přidali následující kontroly: schválení, kontrola pracovní doby a kontrola vyvolání funkce Azure (pro vynucení zpoždění mezi různými oblastmi).

Teď si představte, že musíte provést nasazení oprav hotfix. Spustíte spuštění kanálu, ale nepokračuje, čeká na dokončení většiny kontrol. Nemůžete si dovolit čekat na dokončení schválení a kontrol.

V tomto sprintu jsme umožnili obejít spuštění schválení a kontroly, abyste mohli dokončit opravu hotfix.

Můžete obejít spuštěné Schválení, pracovní hodiny, vyvolat funkci Azure Functions a vyvolat kontroly rozhraní REST API.

Obejít schválení.

Screenshot of Bypass an Approval.

Obejití kontroly pracovních hodin

Screenshot of Bypass Business Hours check.

Obejít kontrolu funkce Azure Functions. Obejití kontroly pracovních hodin

Screenshot of Bypass Invoke Azure Function check.

Když se kontrola vynechá, zobrazí se na kontrolním panelu.

Screenshot of check bypassed.

Kontrolu můžete obejít jenom v případě, že jste Správa strator prostředku, na kterém byly definovány kontroly.

Podpora podnikového serveru GitHubu v požadované kontrole šablony

Šablony jsou mechanismus zabezpečení, který umožňuje řídit fáze, úlohy a kroky kanálů ve vaší organizaci.

Kontrola Vyžadovat šablonu umožňuje vynutit, aby se kanál rozšířil ze sady schválených šablon před přístupem k chráněnému prostředku, jako je například fond agentů nebo připojení služby.

Počínaje tímto sprintem můžete zadat šablony umístěné v úložištích GitHub Enterprise Serveru.

Screenshot of required YAML template.

Znovu spustit vyvolání kontrol funkce Azure

Představte si, že systém nasadíte ve více fázích. Před nasazením druhé fáze existuje kontrola schválení a vyvolání funkce Azure Functions, která spustí kontrolu sanity u již nasazené části systému.

Při kontrole žádosti o schválení si všimnete, že kontrola sanity se spustila před dvěma dny. V tomto scénáři možná znáte jiné nasazení, které ovlivnilo výsledek kontroly sanity.

V této aktualizaci můžete znovu spustit volání funkce Azure Functions a vyvolat kontroly rozhraní REST API. Tato funkce je dostupná jenom pro kontroly, které proběhly úspěšně a nemají žádné opakování.

Screenshot of dynamic check.

Poznámka:

Kontrolu můžete spustit znovu pouze v případě, že jste Správa istrator prostředku, na kterém byly definovány kontroly.

Sestavy

Filtrování pracovních položek

S radostí oznamujeme filtrování grafu pracovních položek. Tato funkce vám umožní najet myší na graf pracovních položek pro rychlý přehled a přejít k podrobnostem o konkrétních segmentech grafu pro podrobné přehledy. Už nemusíte vytvářet vlastní dotazy pro přístup k přesné části dat, která potřebujete. V grafech pracovních položek se teď můžete několika kliknutími ponořit do pracovních položek.

Gif to demo work item filtering.

Vaše zpětná vazba je neocenitelná při formování budoucnosti této funkce. Vyzkoušejte to teď a dejte nám vědět, co si myslíte v naší komunitě Azure DevOps.

Další kroky

Poznámka:

Tyto funkce se budou zavádět během následujících dvou až tří týdnů.

Přejděte na Azure DevOps a podívejte se na ně.

Jak poskytnout zpětnou vazbu

Rádi bychom slyšeli, co si o těchto funkcích myslíte. Pomocí nabídky nápovědy můžete nahlásit problém nebo poskytnout návrh.

Screenshot Make a suggestion.

Můžete také získat rady a své otázky zodpovězené komunitou ve službě Stack Overflow.

Díky,

Silviu Andrica