Rules Pipeline
Una regla pipeline es una regla que despliega contenidos de changeset en un entorno.
La regla pipeline es el núcleo de un Job.
Típicamente, las reglas pipeline girarán en torno a las tareas necesarias para cambiar un entorno:
- build
- package
- test
- provision
- orchestrate
- deploy
Por lo tanto, una regla pipeline debería, al menos, realizar una (si no todas) de las actividades anteriores.
La regla también puede convertirse en la predeterminada para una transición dada:
- Promote - Promueve a un entorno conceptualmente superior, por ejemplo, de preproducción a producción.
- Static - Se utiliza para redesplegar changesets en el mismo entorno que actualmente ocupan.
- Demote - Degrada a un entorno conceptualmente inferior, por ejemplo, de producción (PROD) a preproducción (PREP).
Pasos de Job¶
Cuando se crea una regla pipeline, se precargan los 5 pasos estándar. Estos son:
- CHECK
- INIT
- PRE
- RUN
- POST
CHECK¶
Controla si el job debe crearse o no en primer lugar.
Durante un paso CHECK, el objeto job aún no está disponible.
No hay ID de job.
Si el paso CHECK falla, el job no se crea y el usuario recibirá un
mensaje de error en la interfaz web, con el mensaje lanzado por la regla.
INIT¶
El paso INIT es muy similar al paso CHECK,
pero la diferencia es que el objeto job ya está
creado en el sistema.
El paso INIT ejecuta operaciones en tiempo de usuario, por lo que el usuario
estará esperando a que el paso se complete, al igual que
con el paso CHECK.
Lanzar errores en el paso INIT dejará el job
en un estado de Error y no se ejecutará. El
usuario recibirá un mensaje de error indicando que
el job no pudo iniciarse por la razón
indicada en la operación FAIL.
El paso INIT debe usarse por 2 razones principales:
-
cuando es necesario que la información de verificación de un job fallido se registre como parte del log del job.
-
cuando queremos que el usuario espere confirmación de que el job ha sido creado.
Warning
No sobrecargue los pasos INIT o CHECK con
tareas complejas y potencialmente lentas. Mientras ambos
pasos se ejecutan, el usuario está bloqueado en la interfaz.
PRE¶
El paso PRE contiene operaciones que se ejecutarán inmediatamente después de
que se cree el job y se complete el paso INIT.
Aquí es donde deben ejecutarse las actividades que no modifican un entorno, como build, package o testing.
No coloque operaciones que modifiquen el entorno aquí, como desplegar los binarios o paquetes de la aplicación, o reiniciar servidores.
Use el paso PRE para preparar todo lo que será necesario
para el paso RUN del pipeline para desplegar
su aplicación.
RUN¶
Este paso contiene la parte de la regla que se ejecutará en el momento programado.
Para pipelines que no están programados, el paso RUN puede comenzar inmediatamente
después del paso PRE. Pero si el job se ha programado para más tarde, entonces
el job hará una pausa después de que se complete el paso PRE esperando el tiempo
programado. Esto se muestra en el monitor como el estado Ready del paso RUN.
POST¶
El paso POST es donde se ejecutan el control de errores y las operaciones de ejecución finales.
La actividad típica de POST puede incluir:
- mover changesets y otros topics a su estado deseado, como un estado
Failed - enviar notificaciones por correo electrónico a los usuarios
- actualizar ramas de repositorio con etiquetas que indican qué commit corresponde a qué entorno.
El paso POST siempre se ejecutará. Esto incluye lo siguiente:
- Después de que falla un paso
PRE - Después de que falla un paso
RUN - Después de que un paso
RUNsea exitoso