Sdílet prostřednictvím


Kurz: Nasazení prostředí v CI/CD pomocí GitHubu a prostředí nasazení Azure

V tomto návodu se dozvíte, jak integrovat prostředí nasazení Azure do pipeline CI/CD. Můžete použít libovolného poskytovatele GitOps, který podporuje CI/CD, jako je GitHub Actions, Azure Arc, GitLab nebo Jenkins.

Kontinuální integrace a průběžné doručování (CI/CD) je přístup pro vývoj softwaru, který pomáhá týmům automatizovat proces sestavování, testování a nasazování změn softwaru. CI/CD umožňuje vydávat změny softwaru častěji a s větší jistotou.

Používáte pracovní postup, který obsahuje tři větve: hlavní, vývoj a testování.

  • Hlavní větev se vždy považuje za produkční.
  • Větve funkcí vytvoříte z hlavní větve.
  • Vytváříte žádosti o přijetí změn pro sloučení větví funkcí do hlavního.

Pracovní postup v tomto kurzu je zjednodušený příklad. Pracovní postupy z reálného světa můžou být složitější.

Než začnete s tímto kurzem, můžete se seznámit s komponentami a koncepty prostředí nasazení tím, že si projdete klíčové koncepty prostředí nasazení Azure.

V tomto kurzu se naučíte:

  • Vytvoření a konfigurace vývojového centra
  • Vytvořte trezor klíčů.
  • Vytvoření a konfigurace úložiště GitHub
  • Připojení katalogu k vývojovému centru
  • Konfigurace identit nasazení
  • Konfigurace prostředí GitHubu
  • Testování kanálu CI/CD

Požadavky

Výrobek Požadavky
Azurový – předplatné Azure.
– Oprávnění vlastníka k předplatnému Azure.
- Nainstalované Rozhraní příkazového řádku Azure.
Git Účet GitHubu.
- Nainstalovaný Git .

1. Vytvoření a konfigurace vývojového centra

V této části vytvoříte vývojové centrum a projekt prostředí nasazení Azure se třemi typy prostředí: Vývoj, Testování a Prod.

  • Typ prostředí Prod obsahuje jedno produkční prostředí.
  • Ve vývojovém prostředí se vytvoří nové prostředí pro každou větev funkcí.
  • Pro každou žádost o přijetí změn se v Test vytvoří nové prostředí.

1.1 Nastavení Azure CLI

Začněte tím, že se přihlásíte k Azure. Spusťte následující příkaz a podle pokynů dokončete proces ověřování:

az login

Dále nainstalujte rozšíření Azure devcenter pro Azure CLI:

az extension add --name devcenter --upgrade

Teď, když je aktuální rozšíření nainstalované, zaregistrujte Microsoft.DevCenter obor názvů:

az provider register --namespace Microsoft.DevCenter

Návod

V tomto kurzu uložíte několik hodnot jako proměnné prostředí, které budete později používat. Tyto hodnoty můžete také zaznamenat jinde, abyste měli jistotu, že jsou dostupné, když je potřebujete.

Získejte ID uživatele a nastavte ho na proměnnou prostředí pro pozdější použití:

MY_AZURE_ID=$(az ad signed-in-user show --query id -o tsv)

Načtěte ID předplatného pro vaše aktuální předplatné:

AZURE_SUBSCRIPTION_ID=$(az account show --query id --output tsv)

Získejte ID nájemce pro vašeho aktuálního nájemce.

AZURE_TENANT_ID=$(az account show --query tenantId --output tsv)

Nastavte následující proměnné prostředí:

LOCATION="eastus"
AZURE_RESOURCE_GROUP=<resourceGroupName>
AZURE_DEVCENTER=<devcenterName>
AZURE_PROJECT=<projectName>
AZURE_KEYVAULT=<keyVaultName>

Poznámka:

Musíte použít globálně jedinečný název trezoru klíčů. V opačném případě se může zobrazit následující chyba:

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 Vytvoření vývojového centra

Dev Center je kolekce projektů a prostředí, která mají podobná nastavení. Vývojová centra poskytují přístup k katalogu šablon a artefaktů, které je možné použít k vytváření prostředí. Vývojová centra také poskytují způsob správy přístupu k prostředím a projektům.

Vytvořte skupinu prostředků:

az group create \
  --name $AZURE_RESOURCE_GROUP \
  --location $LOCATION

Vytvoření vývojového centra:

az devcenter admin devcenter create \
  --name $AZURE_DEVCENTER \
  --identity-type SystemAssigned \
  --resource-group $AZURE_RESOURCE_GROUP \
  --location $LOCATION

Předchozí příkaz vypíše JSON. Uložte hodnoty pro id a identity.principalId jako proměnné prostředí k pozdějšímu použití.

AZURE_DEVCENTER_ID=<id>
AZURE_DEVCENTER_PRINCIPAL_ID=<identity.principalId>

1.3 Přiřazení role vlastníka identity vývojového centra v předplatném

Dev Center potřebuje oprávnění k přiřazování rolí u předplatných přidružených k typům prostředí.

Abyste snížili zbytečnou složitost, použijete v tomto kurzu jedno předplatné pro vývojové centrum a všechny typy prostředí. V praxi by předplatná vývojového centra a cílového nasazení pravděpodobně byla oddělena a měly by různé použité zásady.

az role assignment create \
  --scope /subscriptions/$AZURE_SUBSCRIPTION_ID \
  --role Owner \
  --assignee-object-id $AZURE_DEVCENTER_PRINCIPAL_ID \
  --assignee-principal-type ServicePrincipal

1.4 Vytvoření typů prostředí

Na úrovni dev center definují typy prostředí prostředí, která můžou vývojové týmy vytvářet, jako jsou vývoj, testování, sandbox, předprodukční prostředí a produkční prostředí.

Vytvořte tři nové typy prostředí: Vývoj, Testování a 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 Vytvoření projektu

Projekt je bodem přístupu pro vývojový tým. Každý projekt je přidružený k vývojovému centru.

Vytvoření projektu:

az devcenter admin project create \
  --name $AZURE_PROJECT \
  --resource-group $AZURE_RESOURCE_GROUP \
  --location $LOCATION \
  --dev-center-id $AZURE_DEVCENTER_ID

Předchozí příkaz vypíše JSON. id Uložte hodnotu jako proměnnou prostředí, abyste ji mohli použít později:

AZURE_PROJECT_ID=<id>

Přiřaďte si v projektu roli správce projektu DevCenter.

az role assignment create \
  --scope "$AZURE_PROJECT_ID" \
  --role "DevCenter Project Admin" \
  --assignee-object-id $MY_AZURE_ID \
  --assignee-principal-type User

1.6 Vytvoření typů prostředí projektu

Na úrovni projektu inženýři platformy určují, které typy prostředí jsou vhodné pro vývojový tým.

Vytvořte nový typ prostředí projektu pro každý z typů prostředí, které jste vytvořili ve vývojovém centru:

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. Vytvoření trezoru klíčů

V této části vytvoříte nový trezor klíčů. Tento trezor klíčů použijete později v kurzu k uložení osobního přístupového tokenu z GitHubu.

az keyvault create \
  --name $AZURE_KEYVAULT \
  --resource-group $AZURE_RESOURCE_GROUP \
  --location $LOCATION \
  --enable-rbac-authorization true

Znovu uložte id výstup JSON předchozího příkazu jako proměnnou prostředí:

AZURE_KEYVAULT_ID=<id>

Dejte sobě roli Správce služby Key Vault v novém trezoru klíčů:

az role assignment create \
  --scope $AZURE_KEYVAULT_ID \
  --role "Key Vault Administrator" \
  --assignee-object-id $MY_AZURE_ID \
  --assignee-principal-type User

Přiřaďte identitě vývojového centra roli uživatele tajemství služby Key Vault.

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. Vytvoření a konfigurace úložiště GitHub

V této části vytvoříte nové úložiště GitHub pro uložení katalogu. Prostředí nasazení Azure podporuje úložiště GitHub i Azure DevOps. V tomto kurzu použijete GitHub.

3.1 Vytvoření úložiště GitHub

V tomto kroku vytvoříte v účtu GitHubu nové úložiště, které má předdefinovanou adresářovou strukturu, větve a soubory. Tyto položky se generují z ukázkového úložiště šablon.

  1. Vygenerujte nové úložiště GitHub z ukázkové šablony:

    Snímek obrazovky znázorňující vytvoření nové stránky úložiště na GitHubu

  2. Pokud nemáte placený účet GitHubu, nastavte úložiště na Veřejné.

  3. Vyberte Vytvořit úložiště.

3.2 Ochrana hlavní větve úložiště

Důležité větve můžete chránit nastavením pravidel ochrany větví. Pravidla ochrany definují, zda mohou spolupracovníci odstranit větev nebo provést nucený 'push' na větev. Také nastavují požadavky na odeslání do větve, jako například úspěšné absolvování kontrol stavu nebo vynucování lineární historie commitů.

Poznámka:

Chráněné větve jsou dostupné ve veřejných úložištích s GitHubem Free a GitHubem Free pro organizace a ve veřejných a privátních úložištích s GitHubEm Pro, Týmem GitHubu, Cloudem GitHub Enterprise a GitHub Enterprise Serverem. Další informace najdete v plánech GitHubu.

  1. Pokud ještě není otevřený, přejděte na hlavní stránku úložiště.

  2. V nabídce v horní části okna vyberte Nastavení :

    Snímek obrazovky se stránkou úložiště GitHub Nastavení je zvýrazněné.

  3. V části Kód a automatizace na levém bočním panelu vyberte Větve:

    Snímek obrazovky se stránkou nastavení. Větve jsou zvýrazněné.

  4. V části Pravidla ochrany větví vyberte Přidat sadu pravidel větve:

    Snímek obrazovky se stránkou Pravidla ochrany větví Přidání sady pravidel větve je zvýrazněné.

  5. Na stránce Nová sada pravidel větve zadejte v části Název sady pravidel, CI-CD-tutorial-ruleset:

    Snímek obrazovky s polem Název sady pravidel Název sady pravidel je zvýrazněný.

  6. V části Cílové větve vyberte Přidat cíl a pak vyberte Zahrnout výchozí větev nebo Zahrnout všechny větve:

    Snímek obrazovky znázorňující oddíl Cílové větve Jsou zvýrazněny dvě možnosti pro přidání cíle.

  7. V části Pravidla větve vyberte Vyžadovat pull request před sloučením:

    Snímek obrazovky zobrazující pravidla větve. Políčko

  8. Volitelně můžete povolit další pravidla ochrany.

  9. Vyberte Vytvořit.

3.3 Konfigurace proměnných úložiště

  1. V části Zabezpečení na bočním panelu vyberte Tajné kódy a proměnné a pak vyberte Akce:

    Snímek obrazovky znázorňující část Zabezpečení na bočním panelu Akce jsou zvýrazněné.

  2. Vyberte kartu Proměnné .

  3. Pro každou položku v následující tabulce:

    1. Vyberte Novou proměnnou úložiště.
    2. Do pole Název zadejte název proměnné.
    3. Do pole Hodnota zadejte hodnotu popsanou v tabulce.
    4. Vyberte Přidat proměnnou.
    Název proměnné Proměnná hodnota
    AZURE_DEVCENTER Název vašeho vývojového centra
    AZURE_PROJECT Název projektu
    AZURE_CATALOG Nastavit na Prostředí
    AZURE_CATALOG_ITEM Nastavit na FunctionApp
    AZURE_SUBSCRIPTION_ID ID vašeho předplatného Azure
    AZURE_TENANT_ID ID tenanta Azure

    Snímek obrazovky zobrazující stránku proměnných s tabulkou proměnných

3.4 Vytvoření osobního přístupového tokenu GitHub

Dále vytvořte jemně odstupňovaný osobní přístupový token , který vývojovému centru prostředí pro nasazení Azure umožní připojit se k vašemu úložišti a využívat katalog prostředí.

Poznámka:

V diskuzi o zpětné vazbě můžete zanechat zpětnou vazbu ohledně jemně odstupňovaných osobních přístupových tokenů.

  1. V pravém horním rohu libovolné stránky na GitHub.com vyberte profilovou fotku a pak vyberte Nastavení.

  2. Na levém bočním panelu vyberte Nastavení pro vývojáře.

  3. Na levém bočním panelu v části Osobní přístupové tokeny vyberte Jemně odstupňované tokeny a pak vyberte Vygenerovat nový token:

    Snímek obrazovky s možnostmi osobního přístupového tokenu GitHubu Zvýrazněné jsou jemně odstupňované tokeny a možnosti Generovat nový token.

  4. Na stránce Nový jemně odstupňovaný osobní přístupový token zadejte v části Název tokenu název tokenu.

  5. V části Konec platnosti vyberte vypršení platnosti tokenu.

  6. V části Vlastník prostředku vyberte své uživatelské jméno GitHubu.

  7. V části Přístup k úložišti vyberte Pouze úložiště. V části Vybrané úložiště vyhledejte a vyberte úložiště, které jste vytvořili:

    Snímek obrazovky s možnostmi přístupu k úložišti GitHub Je zvýrazněná možnost Pouze vybrat úložiště.

  8. V části Oprávnění vyberte Oprávnění úložiště a pak změňte obsahna jen pro čtení:

    Snímek obrazovky s oprávněními úložiště GitHub Oddíl Obsah je zvýrazněný.

  9. Vyberte Vygenerovat token.

  10. Zkopírujte a uložte svůj osobní přístupový token. Nebudete ho moct znovu zobrazit.

3.5 Uložení osobního přístupového tokenu do trezoru klíčů

Potom osobní přístupový token uložte jako tajný klíč trezoru klíčů s názvem pat:

az keyvault secret set \
    --name pat \
    --vault-name $AZURE_KEYVAULT \
    --value <personalAccessToken>

4. Připojení katalogu k vývojovému centru

V prostředích nasazení Azure je katalog úložiště, které obsahuje sadu definic prostředí. Položky katalogu se skládají ze šablony infrastruktury jako kódu (IaC) a souboru prostředí, který funguje jako manifest. Šablona definuje prostředí a soubor prostředí poskytuje metadata o šabloně. Vývojové týmy používají definice prostředí z katalogu k vytváření prostředí.

Šablona, kterou jste použili k vytvoření úložiště GitHub, obsahuje katalog ve složce Prostředí .

Přidání katalogu do vývojového centra

V následujícím příkazu nahraďte < Organization/Repository > názvem vaší organizace a úložiště GitHub:

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. Konfigurace nasazovacích identit

OpenID Connect s GitHub Actions je metoda ověřování, která k zajištění posíleného zabezpečení používá krátkodobé tokeny. Doporučený způsob, jak ověřit GitHub Actions v Azure.

Instanční objekt můžete také ověřit přímo pomocí tajného kódu, ale tento kurz je mimo rozsah.

5.1 Generování identit nasazení

  1. Zaregistrujte aplikace Microsoft Entra a servisní principály pro všechny tři typy prostředí.

    Vytvoření aplikace Microsoft Entra pro vývoj:

    az ad app create --display-name "$AZURE_PROJECT-Dev"
    

    Tento příkaz vypíše JSON s id, který použijete při vytváření federovaných přihlašovacích údajů pomocí Graph API, a appId (označovaného také jako ID klienta).

    Nastavte následující proměnné prostředí:

    DEV_AZURE_CLIENT_ID=<appId>
    DEV_APPLICATION_ID=<id>
    

    Opakujte tento postup pro testování:

    az ad app create --display-name "$AZURE_PROJECT-Test"
    
    TEST_AZURE_CLIENT_ID=<appId>
    TEST_APPLICATION_ID=<id>
    

    Opakujte kroky znovu pro Prod:

    az ad app create --display-name "$AZURE_PROJECT-Prod"
    
    PROD_AZURE_CLIENT_ID=<appId>
    PROD_APPLICATION_ID=<id>
    
  2. Vytvořte principál služby pro každou aplikaci.

    Spusťte následující příkaz k vytvoření nového služebního principálu pro Dev:

     az ad sp create --id $DEV_AZURE_CLIENT_ID
    

    Tento příkaz vygeneruje výstup JSON s jiným id , který se použije v dalším kroku.

    Nastavte následující proměnnou prostředí:

    DEV_SERVICE_PRINCIPAL_ID=<id>
    

    Opakujte tento postup pro testování:

     az ad sp create --id $TEST_AZURE_CLIENT_ID
    
    TEST_SERVICE_PRINCIPAL_ID=<id>
    

    Opakujte kroky znovu pro Prod:

     az ad sp create --id $PROD_AZURE_CLIENT_ID
    
    PROD_SERVICE_PRINCIPAL_ID=<id>
    
  3. Spuštěním následujících příkazů vytvořte nové přihlašovací údaje federované identity pro každou aplikaci Microsoft Entra.

    V každém ze tří následujících příkazů nahraďte < Organization/Repository > názvem vaší organizace a úložiště GitHub.

    Vytvořte přihlašovací údaje federované identity pro vývojáře:

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

    Vytvořte přihlašovací údaje pro 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"]}'
    

    Vytvořte přihlašovací údaje pro 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 Přiřazení rolí nasazovacím identitám

  1. Přiřaďte jednotlivým identitám nasazení roli Čtenář v projektu.

    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
    
  2. Přiřaďte roli uživatele prostředí nasazení k odpovídajícímu typu prostředí každé identity nasazení:

    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. Konfigurace prostředí GitHubu

S prostředími GitHubu můžete nakonfigurovat prostředí s pravidly ochrany a tajnými kódy. Úloha pracovního postupu, která odkazuje na prostředí, musí před spuštěním nebo přístupem k tajným kódům prostředí dodržovat všechna pravidla ochrany prostředí.

Vytvořte vývojová, testovací a produkční prostředí, která se mapují na typy prostředí v projektu Prostředí nasazení Azure.

Poznámka:

Prostředí, tajné kódy prostředí a pravidla ochrany prostředí jsou k dispozici ve veřejných úložištích pro všechny produkty. Pro přístup k prostředím, tajným kódům prostředí a větvím nasazení v privátních nebo interních úložištích musíte použít GitHub Pro, GitHub Team nebo GitHub Enterprise. Pro přístup k jiným pravidlům ochrany prostředí v privátních nebo interních úložištích musíte použít GitHub Enterprise. Další informace najdete v plánech GitHubu.

6.1 Vytvoření vývojového prostředí

  1. Na GitHubu přejděte na hlavní stránku úložiště.

  2. Pod názvem úložiště vyberte Nastavení. Pokud kartu Nastavení nevidíte, vyberte rozevírací nabídku ... a pak vyberte Nastavení.

  3. Na levém bočním panelu vyberte Prostředí.

  4. Vyberte Nové prostředí a jako název prostředí zadejte Dev a pak vyberte Konfigurovat prostředí:

    Snímek obrazovky zobrazující podokno Přidat prostředí. Název prostředí je Vývoj, a zvýrazněné tlačítko je Konfigurovat prostředí.

  5. V části Tajné kódy prostředí vyberte Přidat tajný klíč prostředí a do pole Název zadejte AZURE_CLIENT_ID.

    Snímek obrazovky znázorňující podokno Prostředí / Konfigurace vývoje Přidání tajného kódu prostředí je zvýrazněné.

  6. Do pole Hodnota zadejte ID klienta (appId) pro aplikaci Dev Microsoft Entra, kterou jste vytvořili dříve (uloženou $DEV_AZURE_CLIENT_ID jako proměnnou prostředí):

    Snímek obrazovky pole Přidat tajemství. Název je nastaven na ID KLIENTA AZURE, hodnota je nastavena na číslo ID a tlačítko Přidat tajemství je zvýrazněno.

  7. Vyberte Přidat tajný kód.

6.2 Vytvoření testovacího prostředí

Výběrem Prostředí na levém bočním panelu se vraťte na hlavní stránku prostředí.

  1. Vyberte Nové prostředí, zadejte Test pro název prostředí a pak vyberte Konfigurovat prostředí.

  2. V části Tajné kódy prostředí vyberte Přidat tajný klíč prostředí a do pole Název zadejte AZURE_CLIENT_ID.

  3. Do pole Hodnota zadejte ID klienta (appId) pro aplikaci Test Microsoft Entra, kterou jste vytvořili dříve (uloženou $TEST_AZURE_CLIENT_ID jako proměnnou prostředí).

  4. Vyberte Přidat tajný kód.

6.3 Vytvoření prostředí Prod

Ještě jednou se vraťte na hlavní stránku prostředí tak, že na levém bočním panelu vyberete Prostředí .

  1. Vyberte Nové prostředí, jako název prostředí zadejte Prod a pak vyberte Konfigurovat prostředí.

  2. V části Tajné kódy prostředí vyberte Přidat tajný klíč prostředí a do pole Název zadejte AZURE_CLIENT_ID.

  3. Do pole Hodnota zadejte ID klienta (appId) pro aplikaci Prod Microsoft Entra, kterou jste vytvořili dříve (uloženou $PROD_AZURE_CLIENT_ID jako proměnnou prostředí).

  4. Vyberte Přidat tajný kód.

Dále se nastavte jako povinný recenzent pro toto prostředí. Když se pokusíte nasadit do Prod, GitHub Actions čeká na schválení před zahájením. Zatímco úloha čeká na schválení, má stav Čekání. Pokud se úloha neschválila do 30 dnů, automaticky selže.

Další informace o prostředích a požadovaných schváleních najdete v tématu Použití prostředí pro nasazení.

  1. Vyberte Požadované recenzenty.

  2. Vyhledejte a vyberte své uživatelské jméno GitHubu. Můžete zadat až šest lidí nebo týmů. Aby mohli pokračovat, musí úlohu schválit jenom jeden z požadovaných kontrolorů.

  3. Vyberte Uložit pravidla ochrany.

Nakonec nakonfigurujte main jako větev nasazení:

  1. V seznamu Větve a značky nasazení vyberte Vybrané větve a značky.

  2. Vyberte Přidat pravidlo pro větev nebo značku nasazení, ujistěte se, že je vybraný Typ reference: Větev, a poté do pole Vzor názvu zadejte main.

  3. Vyberte položku Přidat pravidlo.

7. Testování kanálu CI/CD

V této části provedete nějaké změny v úložišti a otestujete kanál CI/CD.

7.1 Klonování úložiště

  1. V Git Bash přejděte cd do složky, kam chcete lokálně naklonovat úložiště.

  2. Naklonujte úložiště. Nezapomeňte nahradit < Organization/Repository > v následujícím příkazu názvem vaší organizace a úložiště GitHub.

    git clone https://github.com/< Organization/Repository >.git
    
  3. Přejděte do naklonovaného adresáře:

    cd <repository>
    
  4. Vytvořte novou větev a publikujte ji vzdáleně:

    git checkout -b feature1
    
    git push -u origin feature1
    

    V Azure se vytvoří nové prostředí specifické pro tuto větev.

  5. Na GitHubu přejděte na hlavní stránku nově vytvořeného úložiště.

  6. Pod názvem úložiště vyberte Akce:

    Měli byste vidět, že běží nový pracovní postup vytvoření prostředí.

7.2 Provedení změny kódu

  1. Otevřete místně naklonované úložiště v editoru Visual Studio Code.

  2. Ve složce ADE.Tutorial proveďte změnu v souboru.

  3. Uložte změnu.

7.3 Nasdílení změn pro aktualizaci prostředí

  1. Připravte změny a odešlete je do větve feature1.

    git add .
    git commit -m '<commit message>'
    git push
    
  2. Na stránce Akce úložiště uvidíte spuštěný nový pracovní postup prostředí aktualizace.

7.4 Vytvoření pull requestu

  1. Vytvořte žádost o přijetí změnmain <- feature1 na GitHubu.

  2. Na stránce Akce ve vašem úložišti uvidíte, že byl spuštěn nový pracovní postup pro vytvoření prostředí specifického pro žádost o přijetí změn. Používá se typ testovacího prostředí.

7.5 Sloučení požadavku na sloučení

  1. Na GitHubu přejděte na žádost o přijetí změn, kterou jste vytvořili.

  2. Sloučí žádost o přijetí změn.

    Vaše změny se nasazují do produkčního prostředí a prostředí pro větve a pull requesty se odstraní.

Uklidit zdroje

Pokud nechcete používat žádné prostředky, které jste vytvořili, odstraňte je, abyste za ně nemuseli účtovat žádné další poplatky. Pokud jste ukázkovou aplikaci nasadili do jiné skupiny prostředků, můžete zopakovat následující kroky.

Chcete-li odstranit prostředky pomocí Azure Portal:

  1. V levém horním rohu vyberte tlačítko nabídky a pak vyberte Skupiny prostředků.

  2. V seznamu vyberte skupinu prostředků, kterou jste vytvořili.

  3. Vyberte odstranit skupinu zdrojů.

  4. Zadejte název skupiny prostředků. Poté vyberte Odstranit.

Pokud chcete odstranit prostředky pomocí Azure CLI, zadejte následující příkaz:

az group delete --name <my-dev-center-rg>

Nezapomeňte, že odstraněním skupiny prostředků odstraníte všechny prostředky v ní.