Použití integrace správy zdrojového kódu

Integrace správy zdrojového kódu v Azure Automation podporuje jednosměrnou synchronizaci z úložiště správy zdrojového kódu. Správa zdrojů vám umožňuje udržovat vaše runbooky v účtu Automation aktuální se skripty v úložišti správy zdrojového kódu GitHub nebo Azure DevOps. Tato funkce usnadňuje propagaci kódu, který byl testován ve vašem vývojovém prostředí, do produkčního účtu Automation.

Integrace správy zdrojového kódu umožňuje snadno spolupracovat s týmem, sledovat změny a vrátit se k dřívějším verzím runbooků. Například správa zdrojového kódu umožňuje synchronizovat různé větve ve správě zdrojového kódu s účty Automation pro vývoj, testování a produkci.

Poznámka:

Úlohy synchronizace správy zdrojového kódu se spouští pod účtem Automation uživatele a účtují se stejným tempem jako ostatní úlohy Automation. Kromě toho úlohy Azure Automation nepodporují vícefaktorové ověřování (Multi-Factor Authentication).

Typy správy zdrojového kódu

Azure Automation podporuje tři typy správy zdrojového kódu:

  • GitHubu
  • Azure DevOps (Git)
  • Azure DevOps (TFVC)

Předpoklady

Poznámka:

Azure Automation podporuje spravovanou identitu přiřazenou systémem i spravovanou identitu přiřazenou uživatelem s integrací správy zdrojového kódu. Pokud chcete použít spravovanou identitu přiřazenou uživatelem, vytvořte proměnnou AUTOMATION_SC_USER_ASSIGNED_IDENTITY_ID automatizace s hodnotou JAKO ID klienta identity přiřazené uživatelem. Přiřazené Managed Identity uživatelem by mělo být povolené a mít přístup přispěvatele k účtu Automation. Pokud tato proměnná není ve výchozím nastavení vytvořená, použijeme identitu přiřazenou systémem.

Screenshot that displays the user-assigned Managed Identity.

Pokud máte povolený účet Spustit jako i spravovanou identitu, dává se mu přednost spravovaná identita.

Důležité

Účet Spustit jako služby Azure Automation se vyřadí 30. září 2023 a nahradí se spravovanými identitami. Před tímto datem je potřeba migrovat z účtu Spustit jako na spravované identity.

Poznámka:

Podle této dokumentace k Azure DevOps je přístup k aplikacím třetích stran prostřednictvím zásad OAuth standardně vypnutý pro všechny nové organizace. Pokud se tedy pokusíte nakonfigurovat správu zdrojového kódu ve službě Azure Automation pomocí Azure Devops (Git) jako typu správy zdrojového kódu bez povolení přístupu k aplikacím třetích stran prostřednictvím OAuth v dlaždici Zásady organizace Nastavení v Azure DevOps, může se zobrazit chyba SourceControl securityToken je neplatná. Abyste se této chybě vyhnuli, ujistěte se, že nejprve povolíte přístup k aplikacím třetích stran prostřednictvím OAuth v dlaždici Zásady Nastavení organizace v Azure DevOps.

Konfigurace správy zdrojového kódu

V této části se dozvíte, jak nakonfigurovat správu zdrojového kódu pro váš účet Automation. Můžete použít Azure Portal nebo PowerShell.

Přiřazení spravované identity k roli Přispěvatel

V tomto příkladu se pomocí Azure PowerShellu ukáže, jak přiřadit roli Přispěvatel v předplatném k prostředku účtu Azure Automation.

  1. Otevřete konzolu PowerShellu se zvýšenými oprávněními.

  2. Přihlaste se k Azure spuštěním příkazu Connect-AzAccount.

  3. Pokud chcete přiřadit spravovanou identitu k roli Přispěvatel , spusťte následující příkaz.

    New-AzRoleAssignment `
        -ObjectId <automation-Identity-Object(Principal)-Id> `
        -Scope "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Automation/automationAccounts/{automationAccountName}" `
        -RoleDefinitionName "Contributor"
    

Konfigurace správy zdrojového kódu na webu Azure Portal

Tento postup slouží ke konfiguraci správy zdrojového kódu pomocí webu Azure Portal.

  1. V účtu Automation vyberte Správa zdrojového kódu a klikněte na Přidat.

    Select source control

  2. Zvolte typ správy zdrojového kódu a klikněte na Ověřit.

  3. Otevře se okno prohlížeče a zobrazí se výzva k přihlášení. Podle pokynů dokončete ověřování.

  4. Na stránce Souhrn správy zdrojového kódu použijte pole k vyplnění vlastností správy zdrojového kódu definovaných níže. Po dokončení klikněte na Uložit .

    Vlastnost Popis
    Název správy zdrojového kódu Popisný název pro správu zdrojového kódu. Tento název musí obsahovat pouze písmena a číslice.
    Typ správy zdrojového kódu Typ mechanismu správy zdrojového kódu Dostupné možnosti jsou:
    * GitHub
    * Azure DevOps (Git)
    * Azure DevOps (TFVC)
    Úložiště Název úložiště nebo projektu. Načte se prvních 200 úložišť. Pokud chcete vyhledat úložiště, zadejte název do pole a klikněte na Hledat na GitHubu.
    Pobočka Větev, ze které chcete načíst zdrojové soubory. Cílení na větev není dostupné pro typ správy zdrojového kódu TFVC.
    Folder path Složka obsahující runbooky, které se mají synchronizovat, například /Runbooky. Synchronizují se jenom runbooky v zadané složce. Rekurze není podporována.
    Automatická synchronizace1 Nastavení, které zapne nebo vypne automatickou synchronizaci při potvrzení v úložišti správy zdrojového kódu nebo v úložišti GitHubu.
    Publikování runbooku Nastavení Zapnuto, pokud jsou runbooky automaticky publikovány po synchronizaci ze správy zdrojového kódu a v opačném případě vypnuto.
    Popis Text určující další podrobnosti o správě zdrojového kódu

    1 Pokud chcete povolit automatickou synchronizaci při konfiguraci integrace správy zdrojového kódu s Azure DevOps, musíte být vlastníkem úložiště Project Správa istrator nebo vlastníkem úložiště GitHub. Spolupracovníci můžou konfigurovat správu zdrojového kódu pouze bez automatické synchronizace.
    Automatická synchronizace nefunguje se službou Automation Private Link. Pokud povolíte službu Private Link, vyvolání webhooku správy zdrojového kódu selže, protože je mimo síť.

    Screenshot that describes the Source control summary.

Poznámka:

Přihlášení k úložišti správy zdrojového kódu se může lišit od přihlášení k webu Azure Portal. Při konfiguraci správy zdrojového kódu se ujistěte, že jste přihlášeni pomocí správného účtu pro úložiště správy zdrojového kódu. Pokud máte pochybnosti, otevřete v prohlížeči novou kartu, odhlaste se z dev.azure.com, visualstudio.com nebo github.com a zkuste se znovu připojit ke správě zdrojového kódu.

Konfigurace správy zdrojového kódu v PowerShellu

Ke konfiguraci správy zdrojového kódu ve službě Azure Automation můžete použít také PowerShell. Pokud chcete pro tuto operaci použít rutiny PowerShellu, potřebujete osobní přístupový token (PAT). K vytvoření připojení ke správě zdrojového kódu použijte rutinu New-AzAutomationSourceControl . Tato rutina vyžaduje zabezpečený řetězec pro pat. Informace o vytvoření zabezpečeného řetězce najdete v tématu ConvertTo-SecureString.

Následující pododdíly znázorňují vytvoření připojení ke správě zdrojového kódu pro GitHub, Azure DevOps (Git) a Azure DevOps (TFVC).

Vytvoření připojení ke správě zdrojového kódu pro GitHub

New-AzAutomationSourceControl -Name SCGitHub -RepoUrl https://github.com/<accountname>/<reponame>.git -SourceType GitHub -FolderPath "/MyRunbooks" -Branch main -AccessToken <secureStringofPAT> -ResourceGroupName <ResourceGroupName> -AutomationAccountName <AutomationAccountName>

Vytvoření připojení správy zdrojového kódu pro Azure DevOps (Git)

Poznámka:

Azure DevOps (Git) používá adresu URL, která přistupuje k dev.azure.com místo visualstudio.com, která se používá ve starších formátech. Starší formát https://<accountname>.visualstudio.com/<projectname>/_git/<repositoryname> adresy URL je zastaralý, ale stále se podporuje. Preferuje se nový formát.

New-AzAutomationSourceControl -Name SCReposGit -RepoUrl https://dev.azure.com/<accountname>/<adoprojectname>/_git/<repositoryname> -SourceType VsoGit -AccessToken <secureStringofPAT> -Branch main -ResourceGroupName <ResourceGroupName> -AutomationAccountName <AutomationAccountName> -FolderPath "/Runbooks"

Vytvoření připojení správy zdrojového kódu pro Azure DevOps (TFVC)

Poznámka:

Azure DevOps (TFVC) používá adresu URL, která přistupuje k dev.azure.com místo visualstudio.com, která se používá ve starších formátech. Starší formát https://<accountname>.visualstudio.com/<projectname>/_versionControl adresy URL je zastaralý, ale stále se podporuje. Preferuje se nový formát.

New-AzAutomationSourceControl -Name SCReposTFVC -RepoUrl https://dev.azure.com/<accountname>/<adoprojectname>/_git/<repositoryname> -SourceType VsoTfvc -AccessToken <secureStringofPAT> -ResourceGroupName <ResourceGroupName> -AutomationAccountName <AutomationAccountName> -FolderPath "/Runbooks"

Oprávnění PAT (Personal Access Token)

Správa zdrojového kódu vyžaduje určitá minimální oprávnění pro paty. Následující pododdíly obsahují minimální oprávnění požadovaná pro GitHub a Azure DevOps.

Minimální oprávnění PAT pro GitHub

Následující tabulka definuje minimální požadovaná oprávnění PAT pro GitHub. Další informace o vytvoření PAT v GitHubu najdete v tématu Vytvoření tokenu pat pro příkazový řádek.

Scope Popis
repo
repo:status Stav potvrzení přístupu
repo_deployment Přístup ke stavu nasazení
public_repo Přístup k veřejným úložištím
repo:invite Pozvánky k úložišti accessu
security_events Čtení a zápis událostí zabezpečení
admin:repo_hook
write:repo_hook Zapisování háků úložiště
read:repo_hook Háky úložiště pro čtení
Minimální oprávnění PAT pro Azure DevOps

Následující seznam definuje minimální oprávnění PAT požadovaná pro Azure DevOps. Další informace o vytvoření PAT v Azure DevOps najdete v tématu Ověřování přístupu pomocí tokenů pat.

Scope Typ přístupu
Code Číst
Project and team Čtení
Identity Čtení
User profile Čtení
Work items Čtení
Service connections Čtení, dotazování, správa1

1 Oprávnění Service connections se vyžaduje pouze v případě, že jste povolili automatickou synchronizaci.

Synchronizace se správou zdrojového kódu

Pomocí těchto kroků proveďte synchronizaci se správou zdrojového kódu.

  1. Vyberte zdroj z tabulky na stránce Správy zdrojového kódu.

  2. Kliknutím na spustit synchronizaci spusťte proces synchronizace.

  3. Kliknutím na kartu Úlohy synchronizace zobrazte stav aktuální úlohy synchronizace nebo předchozích úloh .

  4. V rozevírací nabídce Správa zdrojového kódu vyberte mechanismus správy zdrojového kódu.

    Sync status

  5. Kliknutím na úlohu můžete zobrazit výstup úlohy. Následující příklad je výstupem úlohy synchronizace správy zdrojového kódu.

    ===================================================================
    
    Azure Automation Source Control.
    Supported runbooks to sync: PowerShell Workflow, PowerShell Scripts, DSC Configurations, Graphical, and Python 2.
    
    Setting AzEnvironment.
    
    Getting AzureRunAsConnection.
    
    Logging in to Azure...
    
    Source control information for syncing:
    
    [Url = https://ContosoExample.visualstudio.com/ContosoFinanceTFVCExample/_versionControl] [FolderPath = /Runbooks]
    
    Verifying url: https://ContosoExample.visualstudio.com/ContosoFinanceTFVCExample/_versionControl
    
    Connecting to VSTS...
    
    Source Control Sync Summary:
    
    2 files synced:
     - ExampleRunbook1.ps1
     - ExampleRunbook2.ps1
    
    ==================================================================
    
    
  6. Další protokolování je k dispozici tak , že na stránce Souhrn úlohy synchronizace zdrojového kódu vyberete Všechny protokoly . Tyto další položky protokolu vám můžou pomoct při řešení problémů, ke kterým může dojít při použití správy zdrojového kódu.

Odpojit správu zdrojového kódu

Odpojení od úložiště správy zdrojového kódu:

  1. Open Source Control under Account Nastavení in your Automation account.

  2. Vyberte mechanismus správy zdrojového kódu, který chcete odebrat.

  3. Na stránce Souhrn správy zdrojového kódu klikněte na Odstranit.

Zpracování problémů s kódováním

Pokud runbooky ve vašem úložišti správy zdrojového kódu upravuje více lidí pomocí různých editorů, může dojít k problémům s kódováním. Další informace o této situaci najdete v tématu Běžné příčiny problémů s kódováním.

Aktualizace pat

V současné době nemůžete pomocí webu Azure Portal aktualizovat pat ve správě zdrojového kódu. Po vypršení platnosti nebo odvolání tokenu PAT můžete aktualizovat správu zdrojového kódu pomocí nového přístupového tokenu jedním z těchto způsobů:

Další kroky