Integratie van bronbeheer gebruiken

Bij de integratie van broncodebeheer in Azure Automation wordt synchronisatie in één richting vanuit uw opslagplaats voor broncodebeheer ondersteund. Met behulp van broncodebeheer kunt u uw runbooks in uw Automation-account up-to-date houden met scripts in uw GitHub- of Azure DevOps-opslagplaats voor broncodebeheer. Met deze functie kunt u eenvoudig de in uw ontwikkelomgeving geteste code naar uw Automation-account promoveren voor productie.

Dankzij de integratie van broncodebeheer kunt u eenvoudig samenwerken met uw team, wijzigingen bijhouden en terugkeren naar eerdere versies van uw runbooks. Met broncodebeheer kunt u bijvoorbeeld verschillende vertakkingen in broncodebeheer synchroniseren met uw ontwikkel-, test- en productieautomatiseringsaccounts.

Notitie

Synchronisatietaken voor broncodebeheer worden uitgevoerd onder het Automation-account van de gebruiker en worden gefactureerd met hetzelfde tarief als andere Automation-taken. Daarnaast bieden Azure Automation-taken geen ondersteuning voor MFA (Multi-Factor Authentication).

Typen broncodebeheer

Azure Automation ondersteunt drie typen broncodebeheer:

  • GitHub
  • Azure DevOps (Git)
  • Azure DevOps (TFVC)

Vereisten

Notitie

Azure Automation ondersteunt zowel de door het systeem toegewezen als door de gebruiker toegewezen beheerde identiteit met integratie van broncodebeheer. Voor het gebruik van een door de gebruiker toegewezen beheerde identiteit maakt u een automatiseringsvariabele AUTOMATION_SC_USER_ASSIGNED_IDENTITY_ID met de waarde als client-id van de door de gebruiker toegewezen identiteit. De toegewezen gebruiker moet zijn ingeschakeld en inzendertoegang hebben tot het Automation-account Managed Identity . Als deze variabele niet wordt gemaakt, gebruiken we standaard de door het systeem toegewezen identiteit.

Screenshot that displays the user-assigned Managed Identity.

Als u zowel een Uitvoeren als-account als een beheerde identiteit hebt ingeschakeld, krijgt de beheerde identiteit een voorkeur.

Belangrijk

Het Uitvoeren als-account van Azure Automation wordt op 30 september 2023 buiten gebruik gesteld en wordt vervangen door beheerde identiteiten. Vóór die datum moet u migreren van een Uitvoeren als-account naar beheerde identiteiten.

Notitie

Volgens deze Documentatie van Azure DevOps is toegang tot toepassingen van derden via OAuth-beleid standaard uitgeschakeld voor alle nieuwe organisaties. Dus als u broncodebeheer probeert te configureren in Azure Automation met Azure Devops (Git) als broncodebeheertype zonder toegang tot toepassingen van derden in te schakelen via OAuth onder De tegel Beleid van organisatie-Instellingen in Azure DevOps, is het mogelijk dat sourceControl securityToken ongeldig is. Om deze fout te voorkomen, moet u ervoor zorgen dat u eerst toegang tot toepassingen van derden inschakelt via OAuth onder De tegel Beleid van organisatie-Instellingen in Azure DevOps.

Broncodebeheer configureren

In deze sectie wordt uitgelegd hoe u broncodebeheer configureert voor uw Automation-account. U kunt Azure Portal of PowerShell gebruiken.

Beheerde identiteit toewijzen aan de rol Inzender

In dit voorbeeld wordt Azure PowerShell gebruikt om te laten zien hoe u de rol Inzender in het abonnement toewijst aan de Resource van het Azure Automation-account.

  1. Open een PowerShell-console met verhoogde bevoegdheden.

  2. Meld u aan bij Azure door de opdracht Connect-AzAccountuit te voeren.

  3. Voer de volgende opdracht uit om de beheerde identiteit toe te wijzen aan de rol Inzender .

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

Broncodebeheer configureren in Azure Portal

Gebruik deze procedure om broncodebeheer te configureren met behulp van Azure Portal.

  1. Selecteer Broncodebeheer in uw Automation-account en klik op Toevoegen.

    Select source control

  2. Kies het type broncodebeheer en klik vervolgens op Verifiëren.

  3. Er wordt een browservenster geopend en u wordt gevraagd u aan te melden. Volg de aanwijzingen om de verificatie te voltooien.

  4. Gebruik op de pagina Samenvatting van broncodebeheer de velden om de eigenschappen van broncodebeheer in te vullen die hieronder zijn gedefinieerd. Klik op Opslaan wanneer u klaar bent.

    Eigenschappen Beschrijving
    Naam van broncodebeheer Een beschrijvende naam voor het broncodebeheer. Deze naam mag alleen letters en cijfers bevatten.
    Type broncodebeheer Type broncodebeheermechanisme. Beschikbare opties zijn:
    * GitHub
    * Azure DevOps (Git)
    * Azure DevOps (TFVC)
    Opslagplaats Naam van de opslagplaats of het project. De eerste 200 opslagplaatsen worden opgehaald. Als u naar een opslagplaats wilt zoeken, typt u de naam in het veld en klikt u op Zoeken op GitHub.
    Vertakking Vertakking van waaruit de bronbestanden moeten worden opgehaald. Doel van vertakkingen is niet beschikbaar voor het type TFVC-broncodebeheer.
    Folder path Map die de runbooks bevat die moeten worden gesynchroniseerd, bijvoorbeeld /Runbooks. Alleen runbooks in de opgegeven map worden gesynchroniseerd. Recursie wordt niet ondersteund.
    Automatisch synchroniseren1 Instelling waarmee automatische synchronisatie wordt ingeschakeld of uitgeschakeld wanneer een doorvoer wordt uitgevoerd in de opslagplaats voor broncodebeheer of in de GitHub-opslagplaats.
    Runbook publiceren Instelling Aan als runbooks automatisch worden gepubliceerd na synchronisatie vanuit broncodebeheer en anders uit.
    Omschrijving Tekst die aanvullende informatie over het broncodebeheer opgeeft.

    1 Als u automatische synchronisatie wilt inschakelen bij het configureren van de integratie van broncodebeheer met Azure DevOps, moet u de eigenaar van de Project Beheer istrator of de GitHub-opslagplaats zijn. Samenwerkers kunnen broncodebeheer alleen configureren zonder automatische synchronisatie.
    Automatisch synchroniseren werkt niet met Automation Private Link. Als u de Private Link inschakelt, mislukken de webhook-aanroepen van broncodebeheer omdat deze zich buiten het netwerk bevindt.

    Screenshot that describes the Source control summary.

Notitie

De aanmelding voor uw opslagplaats voor broncodebeheer kan afwijken van uw aanmelding voor Azure Portal. Zorg ervoor dat u bent aangemeld met het juiste account voor uw opslagplaats voor broncodebeheer bij het configureren van broncodebeheer. Als u twijfelt, opent u een nieuw tabblad in uw browser, meldt u zich af bij dev.azure.com, visualstudio.com of github.com en probeert u opnieuw verbinding te maken met broncodebeheer.

Broncodebeheer configureren in PowerShell

U kunt Ook PowerShell gebruiken om broncodebeheer te configureren in Azure Automation. Als u de PowerShell-cmdlets voor deze bewerking wilt gebruiken, hebt u een persoonlijk toegangstoken (PAT) nodig. Gebruik de cmdlet New-AzAutomationSourceControl om de verbinding met broncodebeheer te maken. Voor deze cmdlet is een beveiligde tekenreeks vereist voor de PAT. Zie ConvertTo-SecureString voor meer informatie over het maken van een beveiligde tekenreeks.

In de volgende subsecties ziet u hoe PowerShell de broncodebeheerverbinding maakt voor GitHub, Azure DevOps (Git) en Azure DevOps (TFVC).

Verbinding met broncodebeheer maken voor GitHub

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

Een broncodebeheerverbinding maken voor Azure DevOps (Git)

Notitie

Azure DevOps (Git) maakt gebruik van een URL die toegang heeft tot dev.azure.com in plaats van visualstudio.com, die in eerdere indelingen wordt gebruikt. De oudere URL-indeling https://<accountname>.visualstudio.com/<projectname>/_git/<repositoryname> is afgeschaft, maar wordt nog steeds ondersteund. De nieuwe indeling heeft de voorkeur.

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"

Verbinding met broncodebeheer maken voor Azure DevOps (TFVC)

Notitie

Azure DevOps (TFVC) maakt gebruik van een URL die toegang heeft tot dev.azure.com in plaats van visualstudio.com, gebruikt in eerdere indelingen. De oudere URL-indeling https://<accountname>.visualstudio.com/<projectname>/_versionControl is afgeschaft, maar wordt nog steeds ondersteund. De nieuwe indeling heeft de voorkeur.

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

Persoonlijke toegangstokenmachtigingen (PAT)

Broncodebeheer vereist enkele minimale machtigingen voor PAW's. De volgende subsecties bevatten de minimale machtigingen die vereist zijn voor GitHub en Azure DevOps.

Minimale PAT-machtigingen voor GitHub

In de volgende tabel worden de minimale PAT-machtigingen gedefinieerd die vereist zijn voor GitHub. Zie Een persoonlijk toegangstoken voor de opdrachtregel maken voor meer informatie over het maken van een PAT in GitHub.

Bereik Omschrijving
repo
repo:status Toegangsdoorvoerstatus
repo_deployment Implementatiestatus van Access
public_repo Toegang tot openbare opslagplaatsen
repo:invite Uitnodigingen voor toegang tot opslagplaatsen
security_events Beveiligingsevenementen lezen en schrijven
admin:repo_hook
write:repo_hook Opslagplaatshook schrijven
read:repo_hook Opslagplaatshook lezen
Minimale PAT-machtigingen voor Azure DevOps

In de volgende lijst worden de minimale PAT-machtigingen gedefinieerd die vereist zijn voor Azure DevOps. Zie Toegang verifiëren met persoonlijke toegangstokens voor meer informatie over het maken van een PAT in Azure DevOps.

Bereik Toegangstype
Code Lezen
Project and team Lezen
Identity Lezen
User profile Lezen
Work items Lezen
Service connections Lezen, query uitvoeren, beheren1

1 De Service connections machtiging is alleen vereist als u autosynchronisatie hebt ingeschakeld.

Synchroniseren met broncodebeheer

Volg deze stappen om te synchroniseren met broncodebeheer.

  1. Selecteer de bron in de tabel op de pagina Broncodebeheer.

  2. Klik op Synchronisatie starten om het synchronisatieproces te starten.

  3. Bekijk de status van de huidige synchronisatietaak of vorige taak door op het tabblad Synchronisatietaken te klikken.

  4. Selecteer in het vervolgkeuzemenu Broncodebeheer een broncodebeheermechanisme.

    Sync status

  5. Als u op een taak klikt, kunt u de taakuitvoer weergeven. Het volgende voorbeeld is de uitvoer van een synchronisatietaak voor broncodebeheer.

    ===================================================================
    
    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. Aanvullende logboekregistratie is beschikbaar door alle logboeken te selecteren op de pagina Overzicht van de synchronisatietaak voor broncodebeheer. Deze aanvullende logboekvermeldingen kunnen u helpen bij het oplossen van problemen die zich kunnen voordoen bij het gebruik van broncodebeheer.

Broncodebeheer verbreken

De verbinding met een opslagplaats voor broncodebeheer verbreken:

  1. Open Source-besturingselement onder Account Instellingen in uw Automation-account.

  2. Selecteer het bronbeheermechanisme dat u wilt verwijderen.

  3. Klik op de pagina Samenvatting van broncodebeheer op Verwijderen.

Coderingsproblemen afhandelen

Als meerdere personen runbooks bewerken in uw opslagplaats voor broncodebeheer met behulp van verschillende editors, kunnen er coderingsproblemen optreden. Zie Veelvoorkomende oorzaken van coderingsproblemen voor meer informatie over deze situatie.

De PAT bijwerken

Op dit moment kunt u Azure Portal niet gebruiken om de PAT in broncodebeheer bij te werken. Wanneer uw PAT is verlopen of ingetrokken, kunt u broncodebeheer op een van de volgende manieren bijwerken met een nieuw toegangstoken:

Volgende stappen