Tutorial: Implementación de entornos en CI/CD mediante GitHub y entornos de implementación de Azure
En este tutorial, aprenderá a integrar los entornos de implementación de Azure en la canalización de CI/CD. Puede usar cualquier proveedor de GitOps que admita CI/CD, como Acciones de GitHub, Azure Arc, GitLab o Jenkins.
La integración continua y entrega continua (CI/CD) es un enfoque de desarrollo de software que ayuda a los equipos a automatizar el proceso de creación, pruebas e implementación de cambios de software. CI/CD le permite liberar cambios de software con mayor frecuencia y con mayor confianza.
Use un flujo de trabajo que incluya tres ramas: main, dev y test.
- La rama main (rama principal) siempre se considera la rama de producción.
- Las ramas de características siempre se crean a partir de la rama main.
- Puede crear solicitudes de incorporación de cambios para combinar ramas de características en main.
Este flujo de trabajo es un ejemplo pequeño para los fines de este tutorial. Los flujos de trabajo reales pueden ser más complejos.
Antes de comenzar este tutorial, puede familiarizarse con los recursos y conceptos de Deployment Environments mediante la revisión de Conceptos clave para entornos de implementación de Azure.
En este tutorial, aprenderá a:
- Creación y configuración de un centro de desarrollo
- Creación de un Almacén de claves
- Creación y configuración de un repositorio de GitHub
- Conexión del catálogo al centro de desarrollo
- Configuración de identidades de implementación
- Configuración de entornos de GitHub
- Prueba de la canalización de CI/CD
Requisitos previos
- Una cuenta de Azure con una suscripción activa.
- Permisos de propietario en la suscripción a Azure.
- Una cuenta de GitHub.
- Si no tiene ninguna, regístrese gratis.
- Instale Git.
- Instale la CLI de Azure.
1. Creación y configuración de un centro de desarrollo
En esta sección, creará un centro de desarrollo y un proyecto de entornos de implementación de Azure con tres tipos de entorno: Desarrollo, Pruebas y Prod.
- El tipo de entorno Prod contiene el único entorno de producción.
- Se crea un nuevo entorno en Desarrollo para cada rama de características.
- Se crea un nuevo entorno en Prueba para cada solicitud de incorporación de cambios.
1.1 Configuración de la CLI de Azure
Para empezar, inicie sesión en Azure. Ejecute el siguiente comando y siga las indicaciones para completar el proceso de autenticación.
az login
A continuación, instale la extensión del centro de desarrollo de Azure para la CLI de Azure.
az extension add --name devcenter --upgrade
Ahora que la extensión actual está instalada, registre el espacio de nombres Microsoft.DevCenter
.
az provider register --namespace Microsoft.DevCenter
Sugerencia
En este tutorial, guardará varios valores como variables de entorno para usarlas más adelante. También puede que quiera registrar este valor en otra parte para asegurarse de que están disponibles cuando sea necesario.
Obtenga el id. de usuario y establézcalo en una variable de entorno para más adelante:
MY_AZURE_ID=$(az ad signed-in-user show --query id -o tsv)
Recupere el id. de la suscripción actual.
AZURE_SUBSCRIPTION_ID=$(az account show --query id --output tsv)
Recupere el id. de inquilino para el inquilino actual.
AZURE_TENANT_ID=$(az account show --query tenantId --output tsv)
Establezca estas variables de entorno:
LOCATION="eastus"
AZURE_RESOURCE_GROUP=<resourceGroupName>
AZURE_DEVCENTER=<devcenterName>
AZURE_PROJECT=<projectName>
AZURE_KEYVAULT=<keyVaultName>
Nota:
Debe usar un nombre de almacén de claves único globalmente. De lo contrario, es posible que reciba el siguiente error: 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. Creación de un centro de desarrollo
Un centro de desarrollo es una colección de proyectos y entornos que tienen una configuración similar. Los centros de desarrollo proporcionan acceso a un catálogo de plantillas y artefactos que se pueden usar para crear entornos. Los centros de desarrollo también proporcionan una manera de administrar el acceso a entornos y proyectos.
Cree un grupo de recursos.
az group create \
--name $AZURE_RESOURCE_GROUP \
--location $LOCATION
Cree un nuevo centro de desarrollo.
az devcenter admin devcenter create \
--name $AZURE_DEVCENTER \
--identity-type SystemAssigned \
--resource-group $AZURE_RESOURCE_GROUP \
--location $LOCATION
El comando anterior genera JSON. Guarde los valores de id
y identity.principalId
como variables de entorno para usarlos más adelante.
AZURE_DEVCENTER_ID=<id>
AZURE_DEVCENTER_PRINCIPAL_ID=<identity.principalId>
1.3 Asignación del rol de propietario de identidad del centro de desarrollo en la suscripción
Un centro de desarrollo necesita permisos para asignar roles en suscripciones asociadas a tipos de entorno.
Para reducir la complejidad innecesaria, en este tutorial, se usa una sola suscripción para el centro de desarrollo y todos los tipos de entorno. En la práctica, es probable que el centro de desarrollo y las suscripciones de implementación de destino sean suscripciones independientes con diferentes directivas aplicadas.
az role assignment create \
--scope /subscriptions/$AZURE_SUBSCRIPTION_ID \
--role Owner \
--assignee-object-id $AZURE_DEVCENTER_PRINCIPAL_ID \
--assignee-principal-type ServicePrincipal
1.4 Creación de los tipos de entorno
En el nivel del centro de desarrollo, los tipos de entorno definen los entornos que los equipos de desarrollo pueden crear, como dev, test, espacio aislado, preproducción o producción.
Cree tres tipos de entorno nuevos: Desarrollo, Prueba y 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. Creación de un proyecto
Un proyecto es el punto de acceso para el equipo encargado del desarrollo. Cada proyecto está asociado a un centro de desarrollo.
Cree un nuevo proyecto.
az devcenter admin project create \
--name $AZURE_PROJECT \
--resource-group $AZURE_RESOURCE_GROUP \
--location $LOCATION \
--dev-center-id $AZURE_DEVCENTER_ID
El comando anterior genera JSON. Guarde el valor id
como una variable de entorno para usarla más adelante.
AZURE_PROJECT_ID=<id>
Asígnese el rol DevCenter Project Administración en el proyecto.
az role assignment create \
--scope "$AZURE_PROJECT_ID" \
--role "DevCenter Project Admin" \
--assignee-object-id $MY_AZURE_ID \
--assignee-principal-type User
1.6 Creación de tipos de entorno del proyecto
En el nivel de proyecto, los ingenieros de la plataforma especifican qué tipos de entorno son adecuados para el equipo de desarrollo.
Cree un nuevo tipo de entorno de proyecto para cada uno de los tipos de entorno que creó en el centro de desarrollo.
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. Creación de un almacén de claves
En esta sección, creará un nuevo almacén de claves. Use este almacén de claves más adelante en el tutorial para guardar un token de acceso personal desde GitHub.
az keyvault create \
--name $AZURE_KEYVAULT \
--resource-group $AZURE_RESOURCE_GROUP \
--location $LOCATION \
--enable-rbac-authorization true
De nuevo, guarde el id
del resultado JSON del comando anterior como una variable de entorno.
AZURE_KEYVAULT_ID=<id>
Conceda el rol Administración istrator de Key Vault en el nuevo almacén de claves.
az role assignment create \
--scope $AZURE_KEYVAULT_ID \
--role "Key Vault Administrator" \
--assignee-object-id $MY_AZURE_ID \
--assignee-principal-type User
Asigne a la identidad del centro de desarrollo el rol de usuario de secretos de 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. Creación y configuración de un repositorio de GitHub
En esta sección, creará un nuevo repositorio de GitHub para almacenar un catálogo. Azure Deployment Environments admite repositorios de GitHub y Azure DevOps. En este tutorial, usará GitHub.
3.1 Creación de un nuevo repositorio de GitHub
En este paso, creará un nuevo repositorio en la cuenta de GitHub que tiene una estructura de directorios predefinida, ramas y archivos. Estos elementos se generan a partir de un repositorio de plantillas de ejemplo.
Use este vínculo para generar un nuevo repositorio de GitHub a partir de la plantilla de ejemplo.
Si no tiene una cuenta de GitHub de pago, establezca el repositorio en Público.
Seleccione Create repository from template (Crear repositorio a partir de plantilla).
En la pestaña Acciones, observe que se produce un error en la acción Crear entorno. Este es el comportamiento esperado; debe continuar al paso siguiente.
3.2 Protección de la rama main del repositorio
Puede proteger las ramas importantes estableciendo reglas de protección de ramas. Las reglas de protección definen si los colaboradores pueden eliminar o forzar la inserción en la rama. También establecen requisitos para las inserciones en la rama, como tener que pasar comprobaciones de estado o un historial de confirmaciones lineales.
Nota
Las ramas protegidas están disponibles en repositorios públicos con GitHub Free y GitHub Free para organizaciones, así como en repositorios públicos y privados con GitHub Pro, GitHub Team, GitHub Enterprise Cloud y GitHub Enterprise Server. Para obtener más información, consulte Productos de GitHub.
Si aún no está abierta, vaya a la página principal del repositorio.
En el nombre del repositorio, seleccione Configuración. Si no puede ver la pestaña Configuración, seleccione el menú desplegable ... y, a continuación, seleccione Configuración.
En la sección Código y automatización de la barra lateral, seleccione Ramas.
En Reglas de protección de ramas, seleccione Agregar regla de protección de rama.
En Patrón de nombre de rama, escriba
main
.En Proteger las ramas coincidentes, seleccione Exigir una solicitud de incorporación de cambios antes de la combinación.
De manera opcional, puede habilitar más reglas de protección.
Seleccione Crear.
3.3 Variables de configuración del repositorio
Nota
Las variables de configuración para Acciones de GitHub están en versión beta y sujetas a cambios.
En la sección Seguridad de la barra lateral, seleccione Secretos y variables y, luego, seleccione Acciones.
Seleccione la pestaña Variables.
Para cada elemento de la tabla:
- Seleccione Nuevo secreto del repositorio.
- En el campo Nombre, escriba el nombre de la variable.
- En el campo Valor, escriba el valor descrito en la tabla.
- Seleccione Add variable.
Nombre de la variable Valor variable AZURE_DEVCENTER Nombre del centro de desarrollo AZURE_PROJECT Nombre del proyecto AZURE_CATALOG Establezca en "Entornos" AZURE_CATALOG_ITEM Establezca en "FunctionApp" AZURE_SUBSCRIPTION_ID El identificador de suscripción a Azure AZURE_TENANT_ID Identificador de inquilino de Azure
3.4 Creación de un token de acceso personal de GitHub
Luego, cree un token de acceso personal específico para permitir que el centro de desarrollo de Azure Deployment Environments se conecte al repositorio y consuma el catálogo de entornos.
Nota:
El token de acceso personal específico está actualmente en versión beta y está sujeto a cambios. Para dejar comentarios, consulte la página de debate y comentarios.
En la esquina superior derecha de cualquier página de GitHub.com, seleccione su foto del perfil y, luego, seleccione Configuración.
En la barra lateral izquierda, seleccione Configuración de desarrollador.
En la barra lateral izquierda, en Tókenes de acceso personal, seleccione Tókenes específicos y, luego, seleccione Generar nuevo token.
En la página Nuevo token de acceso personal específico, en Nombre del token, escriba un nombre para el token.
En Expiración, selecciona cuándo expirará el token.
Seleccione su usuario de GitHub en Propietario del recurso.
En Acceso al repositorio, seleccione Solo repositorios seleccionados y, luego, en la lista desplegable Repositorios seleccionados, busque y seleccione el repositorio que ha creado.
En Permisos, seleccione Permisos del repositorio y cambie Contenido a Solo lectura.
Seleccione Generar token.
Copie y guarde el token de acceso personal ahora. No se puede volver a ver.
3.5 Guardar el token de acceso personal en el almacén de claves
A continuación, guarde el token de acceso personal como un secreto del almacén de claves denominado pat.
az keyvault secret set \
--name pat \
--vault-name $AZURE_KEYVAULT \
--value <personalAccessToken>
4. Conexión del catálogo al centro de desarrollo
En Azure Deployment Environments, un catálogo es un repositorio que contiene un conjunto de definiciones de entorno. Los elementos de catálogo constan de una plantilla de infraestructura como código (IaC) y un archivo de entorno que actúa como manifiesto. La plantilla define el entorno, y el archivo de entorno proporciona metadatos sobre la plantilla. Los equipos de desarrollo usan definiciones de entorno del catálogo para crear entornos.
La plantilla que ha usado para crear el repositorio de GitHub contiene un catálogo en la carpeta Entornos.
Incorporación del catálogo al centro de desarrollo
En el comando siguiente, reemplace < Organization/Repository >
por el nombre de su repositorio y organización de 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. Configuración de identidades de implementación
OpenID Connect con Acciones de GitHub es un método de autenticación que usa tókenes de corta duración para ofrecer seguridad reforzada. Esta es la manera recomendada de autenticar Acciones de GitHub en Azure.
También puede autenticar una entidad de servicio directamente mediante un secreto, pero eso está fuera del ámbito de este tutorial.
5.1 Generación de identidades de implementación
Registre aplicaciones y entidades de servicio de Microsoft Entra para cada uno de los tres tipos de entorno.
Cree la aplicación Microsoft Entra para Desarrollo.
az ad app create --display-name "$AZURE_PROJECT-Dev"
Este comando genera un JSON con un
id
que se usa al crear credenciales federadas con Graph API y unappId
(también denominado id. de cliente).Establezca estas variables de entorno:
DEV_AZURE_CLIENT_ID=<appId> DEV_APPLICATION_ID=<id>
Repita el proceso de prueba.
az ad app create --display-name "$AZURE_PROJECT-Test"
TEST_AZURE_CLIENT_ID=<appId> TEST_APPLICATION_ID=<id>
Y para Prod.
az ad app create --display-name "$AZURE_PROJECT-Prod"
PROD_AZURE_CLIENT_ID=<appId> PROD_APPLICATION_ID=<id>
Cree una entidad de servicio para cada aplicación.
Ejecute el comando siguiente para crear una nueva entidad de servicio para Dev.
az ad sp create --id $DEV_AZURE_CLIENT_ID
Este comando genera una salida de JSON con un
id
diferente y se usará en el siguiente paso.Establezca estas variables de entorno:
DEV_SERVICE_PRINCIPAL_ID=<id>
Repita el proceso de prueba.
az ad sp create --id $TEST_AZURE_CLIENT_ID
TEST_SERVICE_PRINCIPAL_ID=<id>
Y para Prod.
az ad sp create --id $PROD_AZURE_CLIENT_ID
PROD_SERVICE_PRINCIPAL_ID=<id>
Ejecute los siguientes comandos para crear credenciales de identidad federada para cada aplicación de Active Directory.
En cada uno de los comandos siguientes, reemplace
< Organization/Repository >
por el nombre de su repositorio y organización de GitHub.Cree la credencial de identidad federada para 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"]}'
Para Prueba.
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"]}'
Y para 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 Asignación de roles a identidades de implementación
Asigne el rol Reader (Lector) a cada identidad de implementación en el proyecto.
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
Asigne cada identidad de implementación el rol Usuario de entornos de implementación a su tipo de entorno correspondiente.
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. Configuración de entornos de GitHub
Con el uso de entornos de GitHub, puede configurar entornos con reglas de protección y secretos. Un job de flujo de trabajo que referencie a un ambiente debe seguir cualquier regla de protección para el ambiente antes de ejecutar o acceder a los secretos de dicho ambiente.
Cree entornos de desarrollo, pruebas y prod que se asignen a los tipos de entorno en el proyecto Entornos de implementación de Azure.
Nota:
Los entornos, las reglas de protección de entorno y los secretos de entorno se encuentran disponibles en los repositorios públicos para todos los productos. Para acceder a entornos, secretos de entorno y ramas de implementación en repositorios privados o internos, debe usar GitHub Pro, GitHub Team o GitHub Enterprise. Para acceder a otras reglas de protección de entornos en los repositorios privados o internos, debe utilizar GitHub Enterprise. Para obtener más información, consulte Productos de GitHub.
6.1 Creación del entorno de Dev
En GitHub, vaya a la página principal del repositorio.
En el nombre del repositorio, seleccione Configuración. Si no puede ver la pestaña Configuración, seleccione el menú desplegable ... y, a continuación, seleccione Configuración.
En la barra lateral izquierda, haga clic en Entornos.
Seleccione Nuevo entorno y escriba Dev como nombre del entorno y, luego, seleccione Configurar entorno.
En Secretos de entorno, seleccione Agregar secreto y escriba AZURE_CLIENT_ID en Nombre.
En Valor, escriba el identificador de cliente (
appId
) para la aplicación *Dev**Microsoft Entra que creó anteriormente (guardada como la variable de$DEV_AZURE_CLIENT_ID
entorno).Seleccione Add secret (Agregar secreto).
6.2 Creación del entorno de Test
Vuelva a la página principal de entornos; para hacerlo, seleccione Entornos en la barra lateral izquierda.
Seleccione Nuevo entorno y escriba Test como nombre del entorno y, luego, seleccione Configurar entorno.
En Secretos de entorno, seleccione Agregar secreto y escriba AZURE_CLIENT_ID en Nombre.
En Valor, escriba el id. de cliente (
appId
) para la aplicación de Microsoft Entra Test que ha creado anteriormente (guardada como la variable de entorno$TEST_AZURE_CLIENT_ID
).Seleccione Add secret (Agregar secreto).
6.3 Creación del entorno de Prod
Una vez más, vuelva a la página principal de entornos; para hacerlo, seleccione Entornos en la barra lateral izquierda
Seleccione Nuevo entorno y escriba Prod como nombre del entorno y, luego, seleccione Configurar entorno.
En Secretos de entorno, seleccione Agregar secreto y escriba AZURE_CLIENT_ID en Nombre.
En Valor, escriba el id. de cliente (
appId
) para la aplicación de Microsoft Entra Prod que ha creado anteriormente (guardada como la variable de entorno$PROD_AZURE_CLIENT_ID
).Seleccione Add secret (Agregar secreto).
Luego, asígnese como revisor necesario para este entorno. Al intentar realizar la implementación en Prod, Acciones de GitHub esperará una aprobación antes de comenzar. Mientras un trabajo está esperando la aprobación, tiene el estado Esperando. Si un trabajo no se aprueba en un plazo de 30 días, se produce un error automáticamente.
Para obtener más información sobre entornos y aprobaciones necesarias, consulte Uso de entornos para la implementación.
Seleccione Revisores obligatorios.
Busque y seleccione el usuario de GitHub. Puede ingresar hasta seis personas o equipos. Solo uno de los revisores requeridos necesita aprobar el job para que éste pueda proceder.
Seleccione Save protection rules (Guardar reglas de protección).
Por último, configure main
como rama de implementación:
En la lista desplegable Ramas de implementación, elija Ramas seleccionadas.
Seleccione Agregar regla de rama de implementación y escriba
main
para el patrón De nombre de rama.Seleccione Agregar regla.
7. Prueba de la canalización de CI/CD
En esta sección, realizará algunos cambios en el repositorio y probará la canalización de CI/CD.
7.1 Clonar el repositorio
En el terminal, use el comando cd hacia la carpeta en la que le gustaría clonar el repositorio de manera local.
Clone el repositorio. Asegúrese de reemplazar
< Organization/Repository >
en el siguiente comando por el nombre de su repositorio y organización de GitHub.git clone https://github.com/< Organization/Repository >.git
Vaya al directorio clonado.
cd <repository>
Luego, cree una nueva rama y publíquela de forma remota.
git checkout -b feature1
git push -u origin feature1
Se crea un nuevo entorno en Azure específico de esta rama.
En GitHub, vaya a la página principal del repositorio recién creado.
En el nombre del repositorio, seleccione Acciones.
Debería ver un nuevo flujo de trabajo Crear entorno en ejecución.
7.2 Realizar un cambio en el código
Abra el repositorio clonado localmente en VS Code.
En el ADE. Carpeta del tutorial , realice un cambio en un archivo.
Guarde el cambio.
7.3 Insertar los cambios para actualizar el entorno
Almacene provisionalmente los cambios e insértelos en la rama
feature1
.git add . git commit -m '<commit message>' git push
En la página Acciones del repositorio, verá un nuevo flujo de trabajo de Actualizar entorno en ejecución.
7.4 Crear una solicitud de incorporación de cambios
Cree una solicitud de incorporación de cambios
main <- feature1
de GitHub.En la página Acciones del repositorio, verá que se inicia un nuevo flujo de trabajo para crear un entorno específico de la solicitud de incorporación de cambios mediante el tipo de entorno de prueba.
7.5 Combinar la solicitud de incorporación de cambios
En GitHub, vaya a la solicitud de incorporación de cambios que ha creado.
Combine la solicitud de incorporación de cambios.
Los cambios se publican en el entorno de producción y se eliminan la rama y los entornos de solicitud de incorporación de cambios.
Limpieza de recursos
Si no planea usar ninguno de los recursos que ha creado, elimínelos para no incurrir en cargos. Si ha implementado la aplicación de ejemplo en otro grupo de recursos, puede repetir los siguientes pasos.
Para eliminar recursos desde Azure Portal:
Seleccione el botón del menú de la esquina superior izquierda y, después, seleccione Grupos de recursos.
En la lista, seleccione el grupo de recursos que creó.
Seleccione Eliminar grupo de recursos.
Escriba el nombre del grupo de recursos. A continuación, seleccione Eliminar.
Para eliminar recursos mediante la CLI de Azure, escriba el siguiente comando:
az group delete --name <my-dev-center-rg>
Recuerde que al eliminar el grupo de recursos se eliminan todos los recursos que contiene.
Contenido relacionado
- Creación y acceso a un entorno mediante la CLI de Azure
- Para obtener una lista completa de comandos, consulte la documentación de Microsoft Dev Box y Entornos de implementación de Azure de la CLI de Azure.