Compartir a través de


Inicio rápido: automatización de implementaciones

Nota:

Los planes Básico, Estándar y Enterprise quedarán en desuso a partir de mediados de marzo de 2025, con un período de retirada de 3 años. Se recomienda realizar la transición a Azure Container Apps. Para más información, consulte el anuncio de retirada de Azure Spring Apps.

El plan Estándar por consumo y dedicado quedará obsoleto a partir del 30 de septiembre de 2024, con un cierre completo al cabo de seis meses. Se recomienda realizar la transición a Azure Container Apps. Para más información, consulte Migrar el plan Estándar por consumo y dedicado de Azure Spring Apps a Azure Container Apps.

La información de este artículo puede ponerse en práctica en:❌ Básico o Estándar ✔️ Enterprise

En este inicio rápido se muestra cómo automatizar las implementaciones en el plan de Enterprise de Azure Spring Apps mediante Acciones de GitHub y Terraform.

Requisitos previos

Configuración y autenticación de un repositorio de GitHub

La automatización asociada a la aplicación de ejemplo requiere una cuenta de Storage para mantener el estado de Terraform. En los pasos siguientes se muestra cómo crear una cuenta de Storage para usarla con Acciones de GitHub y Terraform.

  1. Use el siguiente comando para crear un grupo de recursos que contenga la cuenta de Storage:

    az group create \
        --name <storage-resource-group> \
        --location <location>
    
  2. Use el comando siguiente para crear una cuenta de Storage:

    az storage account create \
        --resource-group <storage-resource-group> \
        --name <storage-account-name> \
        --location <location> \
        --sku Standard_RAGRS \
        --kind StorageV2
    
  3. Use el siguiente comando para crear un contenedor de Storage en la cuenta de Storage:

    az storage container create \
        --resource-group <storage-resource-group> \
        --name terraform-state-container \
        --account-name <storage-account-name> \
        --auth-mode login
    
  4. Use los siguientes comandos para obtener una credencial de Azure. Para autorizar la acción de inicio de sesión de Azure se necesita una credencial de entidad de servicio de Azure.

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

    El comando debe generar un objeto JSON:

    {
        "clientId": "<GUID>",
        "clientSecret": "<GUID>",
        "subscriptionId": "<GUID>",
        "tenantId": "<GUID>",
        ...
    }
    
  5. En este ejemplo se usa el ejemplo de Fitness Store en GitHub. Bifurque el ejemplo, abra la página del repositorio de GitHub y, después, seleccione la pestaña Settings (Configuración). Abra el menú Secrets (Secretos) y, después, seleccione Add a new secret (Agregar un nuevo secreto), como se muestra en la siguiente captura de pantalla.

    Captura de pantalla que muestra la configuración de GitHub Agregar nuevo secreto.

  6. Establezca el nombre del secreto en AZURE_CREDENTIALS y su valor en la cadena JSON que encontró en el encabezado Autenticación y configuración del repositorio de GitHub.

    Captura de pantalla que muestra la configuración de GitHub Establecer datos secretos.

  7. Agregue los siguientes secretos a Acciones de GitHub:

  8. Agregue el secreto TF_BACKEND_CONFIG a Acciones de GitHub con el siguiente valor:

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

Automatización con acciones de GitHub

Ahora puede ejecutar Acciones de GitHub en el repositorio. El flujo de trabajo de aprovisionamiento aprovisiona todos los recursos necesarios para ejecutar la aplicación de ejemplo. En la siguiente captura de pantalla se muestra la ejecución de un ejemplo:

Captura de pantalla de GitHub que muestra la salida del flujo de trabajo de aprovisionamiento.

Cada aplicación tiene un flujo de trabajo de implementación que volverá a implementar la aplicación cuando se realicen cambios en ella. En la captura de pantalla siguiente se muestra una salida de ejemplo del servicio de catálogo:

Captura de pantalla de GitHub en la que se muestra la salida del flujo de trabajo Implementar catálogo.

El flujo de trabajo de limpieza se puede ejecutar manualmente para eliminar todos los recursos que ha creado el flujo de trabajo provision. En la captura de pantalla siguiente se muestra el resultado:

Captura de pantalla de GitHub que muestra la salida del flujo de trabajo de limpieza.

Limpieza de recursos

Si planea seguir trabajando en otros inicios rápidos y tutoriales, considere la posibilidad de dejar estos recursos activos. Cuando ya no lo necesite, elimine el grupo de recursos, que elimina los recursos que contiene. Para eliminar el grupo de recursos mediante la CLI de Azure, use estos comandos:

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

Pasos siguientes

Continúe con cualquiera de los siguientes artículos de inicio rápido opcionales: