Alternativas
¿Dónde encontrarlo?
Integrado en tu repo
Integrado en cada commit
Feedback automático
Información y logs detallados
Pero antes...
¿Qué es CI/CD?
¿Es lo mismo hacer CI/CD que automatizar?
¿Qué es compatibilidad hacia atrás o backward compatibility?
¿Qué es Semantic Versioning?
Major
Cambio grande en la API que hace incompatible con versiones anteriores
Minor
Cambio menor que mantiene compatibilidad hacia atrás
Patch
Parche, corrección de bugs, fixes menores
Conceptos básicos
Action
Es el bloque portable más pequeño
Artifact
Es el resultado, ficheros, paquetes, logs generados por los actions
Workflow
Es el conjunto de acciones ordenadas para realizar un propósito
Event
La actividad que dispara la ejecución de un workflow
Step
Cada uno de los pasos que se van ejecutando.
Pueden ser commands o actions
Job
Un conjunto de steps para ser ejecutados en un momento dado
Documentación
Usando Actions
Estructura
Estructura del Workflow
name: Nombre del workflow
on: # Definición del event
jobs: # Definición de los jobs
name: Hola mundo
on: [ push ]
jobs:
build:
name: Saludos
runs-on: ubuntu-latest
steps:
- name: Hola mundo
uses: actions/hello-world-javascript-action@v1
with:
who-to-greet: 'Mona the Octocat'
id: hello
- name: Echo con el tiempo transcurrido
run: echo 'El tiempo transcurrido ha sido ${{ steps.hello.outputs.time }}.'
¿Cómo tengo que definir el "on" para que el workflow se lance después de cada push?
on: [ push ]
on: push
¿Cómo tengo que definir el "on" para que el workflow se lance después de cada push?
¿Qué tengo que hacer para que se lance un workflow después de un comentario?
on:
issue_comment:
types:
- created
¿Cómo tengo que definir el "on" para que el workflow se lance después de cada push?
on:
issues:
types:
- opened
Tengo un repo popular y me gustaría saber cuándo me hacen un fork ¿cómo tengo que poner el on del workflow?
on:
fork
Tengo un repo popular y me gustaría saber cuándo me hacen un fork ¿cómo tengo que poner el on del workflow?
En mi empresa usamos la wiki de github en los repos y queremos enviar a slack un mensaje cada vez que alguien haga un cambio en la wiki ¿cómo tengo que poner el on del workflow?
on:
gollum
Tengo un repo popular y me gustaría saber cuándo me hacen un fork ¿cómo tengo que poner el on del workflow?