Självstudie: Distribuera miljöer i CI/CD med hjälp av GitHub- och Azure Deployment Environments
I den här självstudien får du lära dig hur du integrerar Azure Deployment Environments i din CI/CD-pipeline. Du kan använda valfri GitOps-provider som stöder CI/CD, till exempel GitHub Actions, Azure Arc, GitLab eller Jenkins.
Kontinuerlig integrering och kontinuerlig leverans (CI/CD) är en metod för programvaruutveckling som hjälper team att automatisera processen med att skapa, testa och distribuera programvaruändringar. MED CI/CD kan du släppa programändringar oftare och med större förtroende.
Du använder ett arbetsflöde som har tre grenar: main, dev och test.
- Huvudgrenen betraktas alltid som produktion.
- Du skapar funktionsgrenar från huvudgrenen.
- Du skapar pull-begäranden för att sammanfoga funktionsgrenar till main.
Det här arbetsflödet är ett litet exempel i den här självstudien. Verkliga arbetsflöden kan vara mer komplexa.
Innan du påbörjar den här självstudien kan du bekanta dig med resurser och begrepp för distributionsmiljöer genom att granska viktiga begrepp för Azure-distributionsmiljöer.
I den här självstudien lär du dig att:
- Skapa och konfigurera ett utvecklingscenter
- Skapa ett nyckelvalv
- Skapa och konfigurera en GitHub-lagringsplats
- Anslut katalogen till utvecklingscentret
- Konfigurera distributionsidentiteter
- Konfigurera GitHub-miljöer
- Testa CI/CD-pipelinen
Förutsättningar
- Ett Azure-konto med en aktiv prenumeration.
- Ägarbehörigheter för Azure-prenumerationen.
- Ett GitHub-konto.
- Om du inte har ett sådant kan du registrera dig utan kostnad.
- Installera Git.
- Installera Azure CLI.
1. Skapa och konfigurera ett utvecklingscenter
I det här avsnittet skapar du ett Utvecklingscenter för Azure Deployment Environments och ett projekt med tre miljötyper: Dev, Test och Prod.
- Miljötypen Prod innehåller den enskilda produktionsmiljön.
- En ny miljö skapas i Dev för varje funktionsgren.
- En ny miljö skapas i Test för varje pull-begäran.
1.1 Konfigurera Azure CLI
Börja genom att logga in på Azure. Kör följande kommando och följ anvisningarna för att slutföra autentiseringsprocessen.
az login
Installera sedan Azure devcenter-tillägget för Azure CLI.
az extension add --name devcenter --upgrade
Nu när det aktuella tillägget har installerats registrerar du Microsoft.DevCenter
namnområdet.
az provider register --namespace Microsoft.DevCenter
Dricks
I den här självstudien sparar du flera värden som miljövariabler som ska användas senare. Du kanske också vill registrera det här värdet någon annanstans för att säkerställa att de är tillgängliga när det behövs.
Hämta användarens ID och ange det till en miljövariabel för senare:
MY_AZURE_ID=$(az ad signed-in-user show --query id -o tsv)
Hämta prenumerations-ID:t för din aktuella prenumeration.
AZURE_SUBSCRIPTION_ID=$(az account show --query id --output tsv)
Hämta klientorganisations-ID:t för din aktuella klientorganisation.
AZURE_TENANT_ID=$(az account show --query tenantId --output tsv)
Ange följande miljövariabler:
LOCATION="eastus"
AZURE_RESOURCE_GROUP=<resourceGroupName>
AZURE_DEVCENTER=<devcenterName>
AZURE_PROJECT=<projectName>
AZURE_KEYVAULT=<keyVaultName>
Kommentar
Du måste använda ett globalt unikt nyckelvalvnamn. Annars kan du få följande fel: Code: VaultAlreadyExists Message: The vault name 'mykeyvaultname' is already in use. Vault names are globally unique so it is possible that the name is already taken.
1.2 Skapa ett utvecklingscenter
Ett utvecklingscenter är en samling projekt och miljöer som har liknande inställningar. Dev Centers ger åtkomst till en katalog med mallar och artefakter som kan användas för att skapa miljöer. Dev centers ger också ett sätt att hantera åtkomst till miljöer och projekt.
Skapa en resursgrupp.
az group create \
--name $AZURE_RESOURCE_GROUP \
--location $LOCATION
Skapa ett nytt utvecklingscenter.
az devcenter admin devcenter create \
--name $AZURE_DEVCENTER \
--identity-type SystemAssigned \
--resource-group $AZURE_RESOURCE_GROUP \
--location $LOCATION
Föregående kommando matar ut JSON. Spara värdena för id
och identity.principalId
som miljövariabler som ska användas senare.
AZURE_DEVCENTER_ID=<id>
AZURE_DEVCENTER_PRINCIPAL_ID=<identity.principalId>
1.3 Tilldela rollen dev center-identitetsägare i prenumerationen
Ett utvecklingscenter behöver behörigheter för att tilldela roller för prenumerationer som är associerade med miljötyper.
För att minska onödig komplexitet använder du i den här självstudien en enda prenumeration för utvecklingscentret och alla miljötyper. I praktiken skulle dev center- och måldistributionsprenumerationer sannolikt vara separata prenumerationer med olika principer som tillämpas.
az role assignment create \
--scope /subscriptions/$AZURE_SUBSCRIPTION_ID \
--role Owner \
--assignee-object-id $AZURE_DEVCENTER_PRINCIPAL_ID \
--assignee-principal-type ServicePrincipal
1.4 Skapa miljötyperna
På utvecklingscenternivå definierar miljötyper de miljöer som utvecklingsteam kan skapa, till exempel utveckling, testning, sandbox-miljö, förproduktion eller produktion.
Skapa tre nya miljötyper: Dev, Test och Prod.
az devcenter admin environment-type create \
--name Dev \
--resource-group $AZURE_RESOURCE_GROUP \
--dev-center $AZURE_DEVCENTER
az devcenter admin environment-type create \
--name Test \
--resource-group $AZURE_RESOURCE_GROUP \
--dev-center $AZURE_DEVCENTER
az devcenter admin environment-type create \
--name Prod \
--resource-group $AZURE_RESOURCE_GROUP \
--dev-center $AZURE_DEVCENTER
1.5 Skapa ett projekt
Ett projekt är åtkomstpunkten för utvecklingsteamet. Varje projekt är associerat med ett utvecklingscenter.
Skapa ett nytt projekt.
az devcenter admin project create \
--name $AZURE_PROJECT \
--resource-group $AZURE_RESOURCE_GROUP \
--location $LOCATION \
--dev-center-id $AZURE_DEVCENTER_ID
Föregående kommando matar ut JSON. Spara värdet id
som en miljövariabel som ska användas senare.
AZURE_PROJECT_ID=<id>
Tilldela dig själv rollen DevCenter-projektadministratör i projektet.
az role assignment create \
--scope "$AZURE_PROJECT_ID" \
--role "DevCenter Project Admin" \
--assignee-object-id $MY_AZURE_ID \
--assignee-principal-type User
1.6 Skapa projektmiljötyper
På projektnivå anger plattformstekniker vilka miljötyper som är lämpliga för utvecklingsteamet.
Skapa en ny projektmiljötyp för var och en av de miljötyper som du skapade i utvecklingscentret.
az devcenter admin project-environment-type create \
--name Dev \
--roles "{\"b24988ac-6180-42a0-ab88-20f7382dd24c\":{}}" \
--deployment-target-id /subscriptions/$AZURE_SUBSCRIPTION_ID \
--resource-group $AZURE_RESOURCE_GROUP \
--location $LOCATION \
--project $AZURE_PROJECT \
--identity-type SystemAssigned \
--status Enabled
az devcenter admin project-environment-type create \
--name Test \
--roles "{\"b24988ac-6180-42a0-ab88-20f7382dd24c\":{}}" \
--deployment-target-id /subscriptions/$AZURE_SUBSCRIPTION_ID \
--resource-group $AZURE_RESOURCE_GROUP \
--location $LOCATION \
--project $AZURE_PROJECT \
--identity-type SystemAssigned \
--status Enabled
az devcenter admin project-environment-type create \
--name Prod \
--roles "{\"b24988ac-6180-42a0-ab88-20f7382dd24c\":{}}" \
--deployment-target-id /subscriptions/$AZURE_SUBSCRIPTION_ID \
--resource-group $AZURE_RESOURCE_GROUP \
--location $LOCATION \
--project $AZURE_PROJECT \
--identity-type SystemAssigned \
--status Enabled
2. Skapa ett nyckelvalv
I det här avsnittet skapar du ett nytt nyckelvalv. Du använder det här nyckelvalvet senare i självstudien för att spara en personlig åtkomsttoken från GitHub.
az keyvault create \
--name $AZURE_KEYVAULT \
--resource-group $AZURE_RESOURCE_GROUP \
--location $LOCATION \
--enable-rbac-authorization true
id
Spara återigen från föregående kommandos JSON-utdata som en miljövariabel.
AZURE_KEYVAULT_ID=<id>
Ge dig själv rollen Key Vault-administratör i det nya nyckelvalvet.
az role assignment create \
--scope $AZURE_KEYVAULT_ID \
--role "Key Vault Administrator" \
--assignee-object-id $MY_AZURE_ID \
--assignee-principal-type User
Tilldela dev center-identiteten rollen Key Vault Secrets User.
az role assignment create \
--scope $AZURE_KEYVAULT_ID \
--role "Key Vault Secrets User" \
--assignee-object-id $AZURE_DEVCENTER_PRINCIPAL_ID \
--assignee-principal-type ServicePrincipal
3. Skapa och konfigurera en GitHub-lagringsplats
I det här avsnittet skapar du en ny GitHub-lagringsplats för att lagra en katalog. Azure Deployment Environments stöder både GitHub- och Azure DevOps-lagringsplatser. I den här självstudien använder du GitHub.
3.1 Skapa en ny GitHub-lagringsplats
I det här steget skapar du en ny lagringsplats i ditt GitHub-konto som har en fördefinierad katalogstruktur, grenar och filer. Dessa objekt genereras från en exempelmalllagringsplats.
Använd den här länken för att generera en ny GitHub-lagringsplats från exempelmallen.
Om du inte har ett betalt GitHub-konto anger du lagringsplatsen till Offentlig.
Välj Create repository from template (Skapa lagringsplats från mall).
Observera att åtgärden Skapa miljö misslyckas på fliken Åtgärder . Det här beteendet förväntas. Du kan fortsätta med nästa steg.
3.2 Skydda lagringsplatsens huvudgren
Du kan skydda viktiga grenar genom att ange regler för grenskydd. Skyddsregler definierar om medarbetare kan ta bort eller tvinga fram push-överföring till grenen. De ställer också in krav för alla push-överföringar till grenen, till exempel att skicka statuskontroller eller en linjär incheckningshistorik.
Kommentar
Skyddade grenar är tillgängliga på offentliga lagringsplatser med GitHub Free och GitHub Free för organisationer och i offentliga och privata lagringsplatser med GitHub Pro, GitHub Team, GitHub Enterprise Cloud och GitHub Enterprise Server. Mer information finns i GitHubs produkter.
Om den inte redan är öppen går du till huvudsidan för lagringsplatsen.
Under namnet på lagringsplatsen väljer du Inställningar. Om du inte kan se fliken Inställningar väljer du listrutan ... och väljer sedan Inställningar.
I avsnittet Kod och automatisering i sidofältet väljer du Grenar.
Under Grenskyddsregler väljer du Lägg till grenskyddsregel.
Under Mönster för grennamn anger du
main
.Under Skydda matchande grenar väljer du Kräv en pull-begäran innan sammanslagning.
Du kan också aktivera fler skyddsregler.
Välj Skapa.
3.3 Konfigurera lagringsplatsvariabler
Kommentar
Konfigurationsvariabler för GitHub Actions är i betaversion och kan komma att ändras.
I avsnittet Säkerhet i sidofältet väljer du Hemligheter och variabler och sedan Åtgärder.
Välj fliken Variabler.
För varje objekt i tabellen:
- Välj Ny lagringsplatsvariabel.
- I fältet Namn anger du variabelnamnet.
- I fältet Värde anger du det värde som beskrivs i tabellen.
- Välj Lägg till variabel.
Variabelnamn Variabelvärde AZURE_DEVCENTER Ditt dev center-namn AZURE_PROJECT Projektnamnet AZURE_CATALOG Ange till "Miljöer" AZURE_CATALOG_ITEM Ange till "FunctionApp" AZURE_SUBSCRIPTION_ID Ditt Azure-prenumerations-ID AZURE_TENANT_ID Ditt Azure-klient-ID
3.4 Skapa en personlig Åtkomsttoken för GitHub
Skapa sedan en detaljerad personlig åtkomsttoken för att aktivera ditt Azure Deployment Environments dev center för att ansluta till lagringsplatsen och använda miljökatalogen.
Kommentar
Detaljerad personlig åtkomsttoken är för närvarande i betaversion och kan komma att ändras. Om du vill lämna feedback kan du läsa feedbackdiskussionen.
I det övre högra hörnet på en sida på GitHub.com väljer du ditt profilfoto och väljer sedan Inställningar.
I det vänstra sidofältet väljer du Inställningar för utvecklare.
I det vänstra sidofältet går du till Personliga åtkomsttoken, väljer Detaljerade token och väljer sedan Generera ny token.
På sidan Ny detaljerad personlig åtkomsttoken under Tokennamn anger du ett namn för token.
Under Förfallodatum väljer du ett förfallodatum för token.
Välj din GitHub-användare under Resursägare.
Under Lagringsplatsåtkomst väljer du Endast lagringsplatser och sedan i listrutan Valda lagringsplatser söker du efter och väljer den lagringsplats som du skapade.
Under Behörigheter väljer du Lagringsplatsbehörigheter och ändrar Innehållet till Skrivskyddat.
Välj Generera token.
Kopiera och spara din personliga åtkomsttoken nu. Du kan inte visa den igen.
3.5 Spara din personliga åtkomsttoken i nyckelvalvet
Spara sedan den personliga åtkomsttoken som en nyckelvalvshemlighet med namnet pat.
az keyvault secret set \
--name pat \
--vault-name $AZURE_KEYVAULT \
--value <personalAccessToken>
4. Anslut katalogen till utvecklingscentret
I Azure Deployment Environments är en katalog en lagringsplats som innehåller en uppsättning miljödefinitioner. Katalogobjekt består av en IaC-mall (infrastruktur som kod) och en miljöfil som fungerar som ett manifest. Mallen definierar miljön och miljöfilen innehåller metadata om mallen. Utvecklingsteam använder miljödefinitioner från katalogen för att skapa miljöer.
Mallen som du använde för att skapa din GitHub-lagringsplats innehåller en katalog i mappen Miljöer .
Lägg till katalogen i utvecklingscentret
I följande kommando ersätter du < Organization/Repository >
med github-organisationen och lagringsplatsens namn.
az devcenter admin catalog create \
--name Environments \
--resource-group $AZURE_RESOURCE_GROUP \
--dev-center $AZURE_DEVCENTER \
--git-hub path="/Environments" branch="main" secret-identifier="https://$AZURE_KEYVAULT.vault.azure.net/secrets/pat" uri="https://github.com/< Organization/Repository >.git"
5. Konfigurera distributionsidentiteter
OpenID Anslut med GitHub Actions är en autentiseringsmetod som använder kortlivade token för att erbjuda förstärkt säkerhet. Det är det rekommenderade sättet att autentisera GitHub Actions till Azure.
Du kan också autentisera ett huvudnamn för tjänsten direkt med hjälp av en hemlighet, men det är utanför omfånget för den här självstudien.
5.1 Generera distributionsidentiteter
Registrera Microsoft Entra-program och tjänstens huvudnamn för var och en av de tre miljötyperna.
Skapa Microsoft Entra-programmet för Dev.
az ad app create --display-name "$AZURE_PROJECT-Dev"
Det här kommandot matar ut JSON med ett
id
som du använder när du skapar federerade autentiseringsuppgifter med Graph API och ettappId
(kallas även klient-ID).Ange följande miljövariabler:
DEV_AZURE_CLIENT_ID=<appId> DEV_APPLICATION_ID=<id>
Upprepa för test.
az ad app create --display-name "$AZURE_PROJECT-Test"
TEST_AZURE_CLIENT_ID=<appId> TEST_APPLICATION_ID=<id>
Och för Prod.
az ad app create --display-name "$AZURE_PROJECT-Prod"
PROD_AZURE_CLIENT_ID=<appId> PROD_APPLICATION_ID=<id>
Skapa ett huvudnamn för tjänsten för varje program.
Kör följande kommando för att skapa ett nytt huvudnamn för tjänsten för Dev.
az ad sp create --id $DEV_AZURE_CLIENT_ID
Det här kommandot genererar JSON-utdata med en annan
id
och används i nästa steg.Ange följande miljövariabler:
DEV_SERVICE_PRINCIPAL_ID=<id>
Upprepa för test.
az ad sp create --id $TEST_AZURE_CLIENT_ID
TEST_SERVICE_PRINCIPAL_ID=<id>
Och för Prod.
az ad sp create --id $PROD_AZURE_CLIENT_ID
PROD_SERVICE_PRINCIPAL_ID=<id>
Kör följande kommandon för att skapa en ny federerad identitetsautentisering för varje Active Directory-program.
I vart och ett av följande tre kommandon ersätter du
< Organization/Repository >
med din GitHub-organisation och lagringsplatsnamn.Skapa den federerade identitetsautentiseringsuppgiften för Dev.
az rest --method POST \ --uri "https://graph.microsoft.com/beta/applications/$DEV_APPLICATION_ID/federatedIdentityCredentials" \ --body '{"name":"ADEDev","issuer":"https://token.actions.githubusercontent.com","subject":"repo:< Organization/Repository >:environment:Dev","description":"Dev","audiences":["api://AzureADTokenExchange"]}'
För test.
az rest --method POST \ --uri "https://graph.microsoft.com/beta/applications/$TEST_APPLICATION_ID/federatedIdentityCredentials" \ --body '{"name":"ADETest","issuer":"https://token.actions.githubusercontent.com","subject":"repo:< Organization/Repository >:environment:Test","description":"Test","audiences":["api://AzureADTokenExchange"]}'
Och för Prod.
az rest --method POST \ --uri "https://graph.microsoft.com/beta/applications/$PROD_APPLICATION_ID/federatedIdentityCredentials" \ --body '{"name":"ADEProd","issuer":"https://token.actions.githubusercontent.com","subject":"repo:< Organization/Repository >:environment:Prod","description":"Prod","audiences":["api://AzureADTokenExchange"]}'
5.2 Tilldela roller till distributionsidentiteter
Tilldela varje distributionsidentitet rollen Läsare i projektet.
az role assignment create \ --scope "$AZURE_PROJECT_ID" \ --role Reader \ --assignee-object-id $DEV_SERVICE_PRINCIPAL_ID \ --assignee-principal-type ServicePrincipal
az role assignment create \ --scope "$AZURE_PROJECT_ID" \ --role Reader \ --assignee-object-id $TEST_SERVICE_PRINCIPAL_ID \ --assignee-principal-type ServicePrincipal
az role assignment create \ --scope "$AZURE_PROJECT_ID" \ --role Reader \ --assignee-object-id $PROD_SERVICE_PRINCIPAL_ID \ --assignee-principal-type ServicePrincipal
Tilldela varje distributionsidentitet rollen Distributionsmiljöer Användarroll till motsvarande miljötyp.
az role assignment create \ --scope "$AZURE_PROJECT_ID/environmentTypes/Dev" \ --role "Deployment Environments User" \ --assignee-object-id $DEV_SERVICE_PRINCIPAL_ID \ --assignee-principal-type ServicePrincipal
az role assignment create \ --scope "$AZURE_PROJECT_ID/environmentTypes/Test" \ --role "Deployment Environments User" \ --assignee-object-id $TEST_SERVICE_PRINCIPAL_ID \ --assignee-principal-type ServicePrincipal
az role assignment create \ --scope "$AZURE_PROJECT_ID/environmentTypes/Prod" \ --role "Deployment Environments User" \ --assignee-object-id $PROD_SERVICE_PRINCIPAL_ID \ --assignee-principal-type ServicePrincipal
6. Konfigurera GitHub-miljöer
Med GitHub-miljöer kan du konfigurera miljöer med skyddsregler och hemligheter. Ett arbetsflödesjobb som refererar till en miljö måste följa alla skyddsregler för miljön innan du kör eller får åtkomst till miljöns hemligheter.
Skapa dev-, test- och prod-miljöer som mappar till miljötyperna i Azure Deployment Environments-projektet.
Kommentar
Miljöer, miljöhemligheter och miljöskyddsregler är tillgängliga på offentliga lagringsplatser för alla produkter. För åtkomst till miljöer, miljöhemligheter och distributionsgrenar i privata eller interna lagringsplatser måste du använda GitHub Pro, GitHub Team eller GitHub Enterprise. För åtkomst till andra miljöskyddsregler i privata eller interna lagringsplatser måste du använda GitHub Enterprise. Mer information finns i GitHubs produkter.
6.1 Skapa Dev-miljön
På GitHub navigerar du till huvudsidan för lagringsplatsen.
Under namnet på lagringsplatsen väljer du Inställningar. Om du inte kan se fliken Inställningar väljer du listrutan ... och väljer sedan Inställningar.
I det vänstra sidofältet väljer du Miljöer.
Välj Ny miljö och ange Dev som miljönamn och välj sedan Konfigurera miljö.
Under Miljöhemligheter väljer du Lägg till hemlighet och anger AZURE_CLIENT_ID som Namn.
Som Värde anger du klient-ID (
appId
) för *Dev**Microsoft Entra-appen som du skapade tidigare (sparad som$DEV_AZURE_CLIENT_ID
miljövariabel).Välj Add secret (Lägg till hemlighet).
6.2 Skapa testmiljön
Gå tillbaka till huvudmiljösidan genom att välja Miljöer i det vänstra sidofältet.
Välj Ny miljö och ange Test för miljönamnet och välj sedan Konfigurera miljö.
Under Miljöhemligheter väljer du Lägg till hemlighet och anger AZURE_CLIENT_ID som Namn.
Som Värde anger du klient-ID :t (
appId
) för testappen Microsoft Entra som du skapade tidigare (sparad som$TEST_AZURE_CLIENT_ID
miljövariabel).Välj Add secret (Lägg till hemlighet).
6.3 Skapa Prod-miljön
Gå tillbaka till huvudmiljösidan igen genom att välja Miljöer i det vänstra sidofältet
Välj Ny miljö och ange Prod som miljönamn och välj sedan Konfigurera miljö.
Under Miljöhemligheter väljer du Lägg till hemlighet och anger AZURE_CLIENT_ID som Namn.
Som Värde anger du klient-ID :t (
appId
) för Prod Microsoft Entra-appen som du skapade tidigare (sparad som$PROD_AZURE_CLIENT_ID
miljövariabeln).Välj Add secret (Lägg till hemlighet).
Ange sedan dig själv som en nödvändig granskare för den här miljön. När du försöker distribuera till Prod väntar GitHub Actions på ett godkännande innan du börjar. Medan ett jobb väntar på godkännande har det statusen Väntar. Om ett jobb inte godkänns inom 30 dagar misslyckas det automatiskt.
Mer information om miljöer och nödvändiga godkännanden finns i Använda miljöer för distribution.
Välj Nödvändiga granskare.
Sök efter och välj din GitHub-användare. Du kan ange upp till sex personer eller team. Endast en av de nödvändiga granskarna behöver godkänna jobbet för att det ska fortsätta.
Välj Spara skyddsregler.
main
Konfigurera slutligen som distributionsgren:
I listrutan Distributionsgrenar väljer du Valda grenar.
Välj Lägg till distributionsgrenregel och ange
main
för mönstret Förgreningsnamn.Välj Lägg till regel.
7. Testa CI/CD-pipelinen
I det här avsnittet gör du några ändringar i lagringsplatsen och testar CI/CD-pipelinen.
7.1 Klona lagringsplatsen
I terminalen cd till en mapp där du vill klona lagringsplatsen lokalt.
Klona lagringsplatsen. Se till att ersätta
< Organization/Repository >
i följande kommando med din GitHub-organisation och lagringsplatsnamn.git clone https://github.com/< Organization/Repository >.git
Navigera till den klonade katalogen.
cd <repository>
Skapa sedan en ny gren och publicera den via fjärranslutning.
git checkout -b feature1
git push -u origin feature1
En ny miljö skapas i Azure som är specifik för den här grenen.
På GitHub navigerar du till huvudsidan för din nyligen skapade lagringsplats.
Under namnet på lagringsplatsen väljer du Åtgärder.
Du bör se ett nytt arbetsflöde för skapa miljö som körs.
7.2 Ändra koden
Öppna den lokalt klonade lagringsplatsen i VS Code.
I ADE. Självstudiemapp, gör en ändring i en fil.
Spara ändringen.
7.3 Skicka ändringarna för att uppdatera miljön
Mellanlagra ändringarna och push-överför till grenen
feature1
.git add . git commit -m '<commit message>' git push
På sidan Åtgärder på lagringsplatsen visas ett nytt arbetsflöde för uppdateringsmiljön som körs.
7.4 Skapa en pull-begäran
Skapa en GitHub-pullbegäran
main <- feature1
.På sidan Åtgärder på lagringsplatsen ser du att ett nytt arbetsflöde har startats för att skapa en miljö som är specifik för pull-begäran med hjälp av testmiljötypen.
7.5 Sammanfoga pull-begäran
Gå till pull-begäran som du skapade på GitHub.
Sammanfoga pull-begäran.
Dina ändringar publiceras i produktionsmiljön och förgrenings- och pull-begärandemiljöerna tas bort.
Rensa resurser
Om du inte planerar att använda någon av de resurser som du har skapat tar du bort dem så att du inte debiteras ytterligare avgifter. Om du har distribuerat exempelprogrammet i en annan resursgrupp kanske du vill upprepa följande steg.
Så här tar du bort resurser med hjälp av Azure-portalen:
Välj menyknappen i det övre vänstra hörnet och välj sedan Resursgrupper.
I listan väljer du den resursgrupp som du skapade.
Välj Ta bort resursgrupp.
Ange resursgruppsnamnet. Välj sedan ta bort.
Om du vill ta bort resurser med hjälp av Azure CLI anger du följande kommando:
az group delete --name <my-dev-center-rg>
Kom ihåg att om du tar bort resursgruppen tas alla resurser i den bort.
Relaterat innehåll
- Skapa och komma åt en miljö med hjälp av Azure CLI
- Fullständiga kommandolistor finns i Azure CLI-dokumentationen för Microsoft Dev Box och Azure Deployment Environments