Programar workflows en GitHub Actions

El otro día, cuando te conté cómo empezar con GitHub Actions, te dije que existían diferentes eventos para lanzar un workflow. Hoy quiero mostrarte cómo puedes hacer que un flujo se ejecute de manera programada.

Evento schedule

Al igual que en otras plataformas de automatización, GitHub Actions también te permite programar sus flujos, a través del evento schedule. Este funciona de la siguiente manera:

name: Scheduled

# Controls when the action will run. Triggers the workflow on schedule
on:
  schedule:
    - cron: '*/15 * * * *'

# A workflow run is made up of one or more jobs that can run sequentially or in parallel
jobs:
  # This workflow contains a single job called "task"
  task:
    # The type of runner that the job will run on
    runs-on: ubuntu-latest

    # Steps represent a sequence of tasks that will be executed as part of the job
    steps:
    
    # Runs a single command using the runners shell
    - name: Run hello world and date
      run: echo Hello World at $(date '+%d/%m/%Y %H:%M:%S');

Como ves, simplemente necesitas especificar en el apartado on el tipo schedule y a través de una expresión de Cron configurar cada cuánto quieres que se ejecute el mismo. Puedes añadir más de una expresión si lo necesitas:

name: Scheduled

# Controls when the action will run. Triggers the workflow on schedule
on:
  schedule:
    - cron: '*/15 * * * *'
    - cron: '*/5 * * * *'

Nota: El intervalo más pequeño que puedes configurar es cada 5 minutos.

El resultado será parecido al siguiente:

Workflow programado en GitHub Actions

¡Feliz fin de semana!

logo lemoncode

 

 

Bootcamp DevOps

Si tienes ganas de meterte en el área de DevOps, formo parte del
equipo de docentes del Bootcamp DevOps Lemoncode, ¿Te animas a
aprender con nosotros?

Más Info