Implemente su código deploy-your-code
Obtenga información sobre cómo implementar su código en Producción mediante canalizaciones de Cloud Manager en AEM as a Cloud Service.
La implementación del código en Fase y hasta Producción se realiza mediante una canalización de producción. La ejecución de la canalización de producción se divide en las dos fases lógicas siguientes:
- Implementación en el entorno de ensayo: el código se crea e implementa en el entorno de ensayo para pruebas funcionales automatizadas, pruebas de interfaz de usuario, auditoría de experiencias y pruebas de aceptación de usuarios (UAT).
- Implementación en el entorno de producción: una vez validada la compilación en Fase y aprobada para su promoción en Producción, el mismo artefacto de compilación se implementa en el entorno de producción.
Solo el tipo de canalización de código de pila completa admite la digitalización de código, las pruebas de funciones, las pruebas de interfaz de usuario y la auditoría de experiencias.
Proceso de implementación deployment-process
Todas las implementaciones de Cloud Service siguen un proceso gradual para garantizar que no haya tiempo de espera. Consulte Cómo funcionan las implementaciones dinámicas para obtener más información.
Implemente su código con Cloud Manager en AEM as a Cloud Service deploying-code-with-cloud-manager
Una vez configurada la canalización de producción incluido repositorio, entorno y entorno de pruebas, estará listo para implementar el código.
-
Inicie sesión en Cloud Manager en my.cloudmanager.adobe.com y seleccione la organización adecuada.
-
En la consola Mis programas, haga clic en el programa para el que desea implementar el código.
-
En la página Información general, en el área de llamada a acción, haga clic en Implementar.
-
En la página Implementar en producción, haga clic en Generar.
El proceso de generación implementa el código en las tres fases ordenadas siguientes:
Fase de implementación stage-deployment
La fase Implementación de fase incluye los siguientes pasos:
Consulte Detalles del entorno de compilación para obtener detalles sobre el entorno de compilación.
Consulte Prueba de calidad del código para obtener detalles sobre el proceso de prueba.
Fase de prueba stage-testing
La fase Prueba de fase incluye los siguientes pasos:
Véase también Prueba funcional del producto.
Vea también Pruebas funcionales personalizadas.
Las pruebas de IU están basadas en Selenium y empaquetadas en una imagen Docker para ofrecer flexibilidad en el idioma y los marcos de trabajo. Este método permite utilizar Java y Maven, Node y WebDriver.io, o cualquier marco o tecnología basados en Selenium.
Véase también Pruebas de IU personalizadas.
Este paso en la canalización siempre se ejecuta y no se puede omitir. A medida que se ejecuta una canalización de producción, se incluye un paso de auditoría de experiencias después de realizar pruebas funcionales personalizadas que ejecutan las comprobaciones.
- Las páginas configuradas se envían al servicio y se evalúan.
- Los resultados son informativos y muestran las puntuaciones y el cambio entre la puntuación actual y la anterior.
- Este conocimiento es importante para determinar si hay una regresión que se introduce con la implementación actual.
Consulte Comprender los resultados de la auditoría de experiencias.
Fase de implementación de producción production-deployment
AEM El proceso de implementación en topologías de producción difiere ligeramente para minimizar el impacto en los visitantes de un sitio de.
Las implementaciones de producción generalmente siguen los mismos pasos que se describieron anteriormente, pero de forma gradual. Estos pasos incluyen lo siguiente:
- Implementar paquetes de AEM para crear.
- Desasociar
dispatcher1
del equilibrador de carga. - AEM Implementar paquetes en
publish1
y el paquete de Dispatcher endispatcher1
, vaciar la caché de Dispatcher. - Vuelva a colocar
dispatcher1
en el equilibrador de carga. - Cuando
dispatcher1
vuelva a estar en servicio, desasociedispatcher2
del equilibrador de carga. - AEM Implementar paquetes en
publish2
y el paquete de Dispatcher endispatcher2
, vaciar la caché de Dispatcher. - Vuelva a colocar
dispatcher2
en el equilibrador de carga.
Este proceso continúa hasta que la implementación haya llegado a todos los editores y distribuidores de la topología.
Tiempos de espera durante una implementación timeouts
Los siguientes pasos agotan el tiempo de espera si se les deja esperando los comentarios del usuario durante una implementación:
Volver a ejecutar una implementación de producción reexecute-deployment
En raras ocasiones, los pasos de implementación de producción pueden fallar por motivos transitorios. En estos casos, se admite la nueva ejecución del paso de implementación de producción siempre y cuando el paso de implementación de producción se haya completado, independientemente del tipo de finalización (por ejemplo, cancelada o fallida). Volver a ejecutar crea una nueva ejecución que utiliza la misma canalización y que consta de los tres pasos siguientes:
- Validación: la misma validación que se produce durante la ejecución normal de una canalización.
- Compilación: en el contexto de una nueva ejecución, el paso de compilación copia artefactos y no ejecuta realmente un nuevo proceso de compilación.
- Implementación de producción: utiliza la misma configuración y opciones que el paso de implementación de producción en una ejecución de canalización normal.
En estas circunstancias, cuando se puede volver a ejecutar, la página de estado de la canalización de producción contiene la opción Volver a ejecutar junto a la opción habitual Descargar registro de compilación.
Limitaciones limitations
- Volver a ejecutar el paso de implementación de producción solo está disponible para la última ejecución.
- Volver a ejecutar no está disponible para ejecuciones de actualización push. Si la última ejecución es una ejecución de actualización push, no será posible volver a ejecutarla.
- Si la última ejecución ha fallado en cualquier momento antes del paso de implementación de producción, no será posible volver a ejecutarla.
Volver a ejecutar la API reexecute-API
Además de estar disponible en IU, puede utilizar la API de Cloud Manager para activar las nuevas ejecuciones, así como identificar las que se activaron como ejecuciones nuevas.
Activación de una nueva ejecución reexecute-deployment-api
Para almacenar en déclencheur una nueva ejecución, realice una solicitud de PUT al vínculo HAL https://ns.adobe.com/adobecloud/rel/pipeline/reExecute
en el estado del paso de implementación de producción.
- Si este vínculo está presente, la ejecución se puede reiniciar desde ese paso.
- Si está ausente, la ejecución no se puede reiniciar desde ese paso.
Este vínculo solo está disponible para el paso de implementación de producción.
{
"_links": {
"https://ns.adobe.com/adobecloud/rel/pipeline/logs": {
"href": "/api/program/4/pipeline/1/execution/953671/phase/1575676/step/2983530/logs",
"templated": false
},
"https://ns.adobe.com/adobecloud/rel/pipeline/reExecute": {
"href": "/api/program/4/pipeline/1/execution?stepId=2983530",
"templated": false
},
"https://ns.adobe.com/adobecloud/rel/pipeline/metrics": {
"href": "/api/program/4/pipeline/1/execution/953671/phase/1575676/step/2983530/metrics",
"templated": false
},
"self": {
"href": "/api/program/4/pipeline/1/execution/953671/phase/1575676/step/2983530",
"templated": false
}
},
"id": "6187842",
"stepId": "2983530",
"phaseId": "1575676",
"action": "deploy",
"environment": "weretail-global-b75-prod",
"environmentType": "prod",
"environmentId": "59254",
"startedAt": "2022-01-20T14:47:41.247+0000",
"finishedAt": "2022-01-20T15:06:19.885+0000",
"updatedAt": "2022-01-20T15:06:20.803+0000",
"details": {
},
"status": "FINISHED"
La sintaxis del valor href del vínculo HAL es solo un ejemplo. El valor real siempre debe leerse desde el vínculo HAL y no generarse.
Enviar una solicitud de PUT a este extremo da como resultado una respuesta 201 si es correcta y el cuerpo de la respuesta es la representación de la nueva ejecución. Este flujo de trabajo es similar a iniciar una ejecución normal a través de la API.
Identificación de una ejecución que se ha vuelto a ejecutar identify-reexecution
El sistema identifica las reejecuciones estableciendo el campo trigger
al valor RE_EXECUTE
.