TALK: Task como task runner
Opened this issue · 0 comments
larsx2 commented
Acerca
Task es una herramienta de automatización de tareas repetitivas configurable a través de archivos YAML.
Beneficios
La audiencia aprenderá como configurar Task para automatizar comandos básicos de shell así como aprovechar las funcionalidades avanzadas de la herramienta como interactividad, variables de entorno, parámetros, pruebas de idempotencia y precondiciones.
Preview
version: '3'
env:
DATABASE_PASSWORD: "my-secure-password"
tasks:
up:
desc: Set up dev environment
cmds:
- docker-compose up -d
- sleep 2
- task: db:migrate-up
- echo "dev environment is ready."
down:
desc: Tear down dev environment
cmds:
- docker-compose down -v
reset:
desc: Rest dev environment
cmds:
- task: down
- task: up
db:connect:
desc: Connect to localhost database
internal: true
cmds:
- PGPASSWORD=$DATABASE_PASSWORD psql -h localhost -d mydb -U user {{.OPTIONS}}
preconditions:
- sh: which psql
- msg: "psql command not found, please install and run again"
db:migrate-up:
cmds:
- task: db:connect
vars: { OPTIONS: '-f migrations/base.up.sql' }
db:migrate-down:
cmds:
- task: db:connect
vars: { OPTIONS: '-f migrations/base.down.sql' }