Saltar al contenido
Menú
El blog de Kañaz
  • Inicio
  • Acerca de
  • Github
  • Youtube
  • LinkedIn
  • Twitter
El blog de Kañaz

Stages y aprobación manual en Azure DevOps

Publicada el 6 diciembre, 20206 diciembre, 2020
Twittear

Al trabajar con los pipelines de Azure DevOps usando un archivo YAML en lugar del modo clásico y asistido quizá tengas un problema en cuestiones de aprender la sintaxis y cosas por el estilo pero lo que es bien cierto es que el control que te dan es muy superior además de que sirve de mucho para modificar rápidamente.

De todas las opciones que se pueden manejar con los pipelines la de los stages es quizá mi favorita por mucho y es muy útil para poder segmentar los entornos o acciones que quieres trabajar. Derivado de esta parte, una de las cosas que puedes lograr es la aprobación manual, es decir, una aprobación que suceda únicamente cuando alguien dentro de tu equipo con la autorización adecuada apruebe la continuación de las tareas.

Pero antes de continuar, hagamos una pausa y veamos por partes lo que haremos. Comienza por crear un pipeline en blanco con unas cuantas etapas o stages.

stages:
- stage: build
  jobs:
    - job: Job_1
    - job: Job_2
- stage: test
  jobs:
    - job: Job_3
    - job: Job_4
- stage: deploy
  jobs:
    - job: Job_5
    - job: Job_6

stages: - stage: build jobs: - job: Job_1 - job: Job_2 - stage: test jobs: - job: Job_3 - job: Job_4 - stage: deploy jobs: - job: Job_5 - job: Job_6

Al ejecutar esto podrás ver una separación visual que te resultará muy familiar si ya has utilizado el modo clásico.

Cada una de etapas puede operar de manera diferente, por ejemplo en la etapa de test podemos hacer que solo bajo previa autorización manual el flujo continúe.

Comienza por seleccionar las opción de environments en la categoría de Pipelines.

Ahora selecciona la opción de crear uno nuevo. Podrás ver que ya hay uno existente llamado dev.

Pon el nombre que tú quieras y selecciona la opción de Ninguno como recurso asignado.

Dentro del nuevo ambiente recién creado, selecciona la opción de Approvals and checks.

Agrega una nueva regla, podrás ver que hay muchas opciones, de hecho, si eres un poco curioso, te recomendaría que explores un poco, aquí en mis ratos libres he buscado cosas nuevas por hacer, quizá puedan salir algunos artículos adicionales de lo que he explorado, en fin, por ahora selecciona la primera aprobación, la manual.

Ya sé, ya sé es muy triste ser tu único aprobador, se siente más soledad que en un desierto pero ni modo, por ahora es lo que hay.

Ya con todo esto listo, puedes regresar al pipeline y modificar el archivo. Tomaremos la etapa de test para poder jugar con la aprobación manual.

stages:
- stage: build
  displayName: 'Build stage'
  jobs:
    - job: Job_1
      steps:
        - script: echo 'Esta es la primera tarea'
    - job: Job_2
      steps:
        - script: echo 'Esta es la segunda tarea'
 
- stage: test
  displayName: 'Test stage'
  jobs:
  - deployment: 'Testing'
    displayName: My Deployment
    environment: 'aprobadores'
    strategy:
     runOnce:
       deploy:
         steps:
           - script: echo 'Esta tarea sucede solo on autorización'
 
- stage: deploy
  displayName: 'Deploy stage'
  jobs:
    - job: Job_5
      steps:
        - script: echo 'Ya casi pasamos al final'
    - job: Job_6
      steps:
        - script: echo 'Se acabó el proceso!!'

stages: - stage: build displayName: 'Build stage' jobs: - job: Job_1 steps: - script: echo 'Esta es la primera tarea' - job: Job_2 steps: - script: echo 'Esta es la segunda tarea' - stage: test displayName: 'Test stage' jobs: - deployment: 'Testing' displayName: My Deployment environment: 'aprobadores' strategy: runOnce: deploy: steps: - script: echo 'Esta tarea sucede solo on autorización' - stage: deploy displayName: 'Deploy stage' jobs: - job: Job_5 steps: - script: echo 'Ya casi pasamos al final' - job: Job_6 steps: - script: echo 'Se acabó el proceso!!'

El resultado de esto será algo así en tu pipeline.

Puedes ver en la imagen que aparece en la etapa adecuada la opción de esperando y aparece en medio la opción de revisar. Si la seleccionas, aparecerá otra opción.

Lo apruebas, agregas un comentario (una muy buena idea hacerlo aunque sea en pruebas) y está listo. El proceso procederá de manera habitual.

Así queda ya todo listo, hecho para poder tener mucho más control en tus procesos de despliegue de nuevas versiones. Quizá suena a un posible cuello de botella y puede serlo pero con un poco más de experiencia y práctica esto aporta mucha más seguridad a tus nuevos lanzamientos.

Deja una respuesta Cancelar la respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Busca en este sitio

MI perfil de Github

Github profile

Sígueme en Twitter

Seguir a @aminespinoza
©2023 El blog de Kañaz | Funciona con SuperbThemes y WordPress