Quickstart: Implementaties automatiseren

Notitie

Azure Spring Apps is de nieuwe naam voor de Azure Spring Cloud-service. Hoewel de service een nieuwe naam heeft, ziet u de oude naam op sommige plaatsen terwijl we werken aan het bijwerken van assets, zoals schermopnamen, video's en diagrammen.

Dit artikel is van toepassing op:❌ Basic/Standard ✔️ Enterprise

In deze quickstart ziet u hoe u implementaties automatiseert in het Azure Spring Apps Enterprise-plan met behulp van GitHub Actions en Terraform.

Vereisten

  • Een Azure-account met een actief abonnement. Gratis een account maken
  • Inzicht in en voldoen aan de sectie Vereisten van het Enterprise-plan in Azure Marketplace.
  • De Azure CLI versie 2.45.0 of hoger.
  • Git.
  • jq
  • De Azure Spring Apps Enterprise-abonnementsextensie. Gebruik de volgende opdracht om eerdere versies te verwijderen en de nieuwste Enterprise-abonnementsextensie te installeren. Als u de extensie eerder hebt geïnstalleerd, verwijdert u deze spring-cloud om te voorkomen dat de configuratie en versie niet overeenkomen.
    az extension add --upgrade --name spring
    az extension remove --name spring-cloud
    

Een GitHub-opslagplaats instellen en verifiëren

Voor de automatisering die is gekoppeld aan de voorbeeldtoepassing is een opslagaccount vereist voor het onderhouden van de Terraform-status. In de volgende stappen ziet u hoe u een opslagaccount maakt voor gebruik met GitHub Actions en Terraform.

  1. Gebruik de volgende opdracht om een nieuwe resourcegroep te maken die het opslagaccount bevat:

    az group create \
        --name <storage-resource-group> \
        --location <location>
    
  2. Gebruik de volgende opdracht om een opslagaccount te maken:

    az storage account create \
        --resource-group <storage-resource-group> \
        --name <storage-account-name> \
        --location <location> \
        --sku Standard_RAGRS \
        --kind StorageV2
    
  3. Gebruik de volgende opdracht om een opslagcontainer te maken binnen het opslagaccount:

    az storage container create \
        --resource-group <storage-resource-group> \
        --name terraform-state-container \
        --account-name <storage-account-name> \
        --auth-mode login
    
  4. Gebruik de volgende opdrachten om een Azure-referentie op te halen. U hebt een azure-service-principalreferentie nodig om de aanmeldingsactie van Azure te autoriseren.

    az login
    az ad sp create-for-rbac \
        --role contributor \
        --scopes /subscriptions/<SUBSCRIPTION_ID> \
        --json-auth
    

    De opdracht moet een JSON-object uitvoeren:

    {
        "clientId": "<GUID>",
        "clientSecret": "<GUID>",
        "subscriptionId": "<GUID>",
        "tenantId": "<GUID>",
        ...
    }
    
  5. In dit voorbeeld wordt het fitnessarchiefvoorbeeld op GitHub gebruikt. Open het voorbeeld, open de gitHub-opslagplaatspagina en selecteer vervolgens het tabblad Instellingen. Open het menu Geheimen en selecteer vervolgens Een nieuw geheim toevoegen, zoals wordt weergegeven in de volgende schermopname.

    Screenshot showing GitHub Settings Add new secret.

  6. Stel de geheime naam in AZURE_CREDENTIALS op de JSON-tekenreeks die u hebt gevonden onder de kop Uw GitHub-opslagplaats instellen en verifiëren.

    Screenshot showing GitHub Settings Set secret data.

  7. Voeg de volgende geheimen toe aan GitHub Actions:

  8. Voeg het geheim TF_BACKEND_CONFIG toe aan GitHub Actions met de volgende waarde:

    resource_group_name  = "<storage-resource-group>"
    storage_account_name = "<storage-account-name>"
    container_name       = "terraform-state-container"
    key                  = "dev.terraform.tfstate"
    

Automatiseren met GitHub Actions

U kunt nu GitHub Actions uitvoeren in uw opslagplaats. De inrichtingswerkstroom richt alle resources in die nodig zijn om de voorbeeldtoepassing uit te voeren. In de volgende schermopname ziet u een voorbeeld van de uitvoering:

Screenshot of GitHub showing output from the provision workflow.

Elke toepassing heeft een implementatiewerkstroom waarmee de toepassing opnieuw wordt geïmplementeerd wanneer er wijzigingen in die toepassing worden aangebracht. In de volgende schermopname ziet u een voorbeeld van uitvoer van de catalogusservice:

Screenshot of GitHub showing output from the Deploy Catalog workflow.

De opschoonwerkstroom kan handmatig worden uitgevoerd om alle resources te verwijderen die door de provision werkstroom zijn gemaakt. In de volgende schermopname ziet u de uitvoer:

Screenshot of GitHub showing output from the cleanup workflow.

Resources opschonen

Als u van plan bent om verder te gaan met volgende snelstarts en zelfstudies, kunt u deze resources het beste intact laten. Als u de resourcegroep niet meer nodig hebt, verwijdert u deze. Hierdoor worden ook de resources in de resourcegroep verwijderd. Als u de resourcegroep wilt verwijderen met behulp van Azure CLI, gebruikt u de volgende opdrachten:

echo "Enter the Resource Group name:" &&
read resourceGroupName &&
az group delete --name $resourceGroupName &&
echo "Press [ENTER] to continue ..."

Volgende stappen

Ga door naar een van de volgende optionele quickstarts: