Drone workshop
Drone workshop
Óscar García Amor
https://ogarcia.me/
¿Cómo se define Drone?
Drone es una plataforma de Entrega Continua (Continuous Delivery) que automatiza tus flujos de trabajo desde las pruebas a la puesta en producción.
Drone workshop
Óscar García Amor
https://ogarcia.me/
Un poco de historia
- 2012: Nace el proyecto de manos de Brad Rydzewski y Thomas Burke.
- 2014: El 7 de febrero el proyecto pasa a código abierto con licencia Apache y se realiza el primer commit al repositorio.
- 2018: Actualmente tienen mas de 3200 commits.
Drone workshop
Óscar García Amor
https://ogarcia.me/
¿Qué es realmente Drone?
Drone es un sistema que permite automatizar todos los procesos de CD/CI por medio de la definición de un flujo de trabajo (pipeline) con la principal particularidad de que cada paso de dicho flujo puede ser ejecutado en su propio contenedor de Docker.
Drone workshop
Óscar García Amor
https://ogarcia.me/
¿De que se compone?
Drone workshop
Óscar García Amor
https://ogarcia.me/
La arquitectura de Drone es muy sencilla:
- Un servidor
- Un número indeterminado de agentes. De 1 a N.
¿A que se conecta?
Drone workshop
Óscar García Amor
https://ogarcia.me/
Drone puede trabajar con los siguientes servidores de repositorio:
- GitHub (En cualquiera de sus versiones)
- GitLab
- Gogs / Gitea
- Bitbucket
- Bitbucket Server (Experimental)
- Coding (made in China)
¿Cómo se usa?
Drone workshop
Óscar García Amor
https://ogarcia.me/
.drone.yml
Drone workshop
Óscar García Amor
https://ogarcia.me/
pipeline:
frontend:
image: node
commands:
- npm install
- npm test
backend:
image: golang
commands:
- go test -v
- go install
services:
database:
image: mysql
.drone.yml
Drone workshop
Óscar García Amor
https://ogarcia.me/
pipeline:
hola-drone:
image: alpine
commands:
- echo "Hola drone"
¡Veamos cómo funciona!
Drone workshop
Óscar García Amor
https://ogarcia.me/
Conclusiones
Drone workshop
Óscar García Amor
https://ogarcia.me/
Drone me mola porque...
Drone workshop
Óscar García Amor
https://ogarcia.me/
- Es muy sencillo de utilizar
- Cada paso del flujo de trabajo se ejecuta de manera controlada.
- Los pasos son reproducibles siempre.
- Usa Docker y... ¡Docker mola! 😄
- Ocupa francamente poco. La imagen de Drone son 30MB, la del agente 14MB y en memoria solo ocupa 20 MB el servicio y 10MB el agente.
Pero no me mola porque...
Drone workshop
Óscar García Amor
https://ogarcia.me/
- Al ser tan sencillo es posible que algunos flujos no se puedan realizar.
- No se dispone de una versión gratuita en la nube al estilo de Travis o CircleCI.
- Usa Docker y... ¡Docker no mola! 😄😄😄😄
¿Preguntas?
Drone workshop
Óscar García Amor
https://ogarcia.me/
¡Gracias!
Drone workshop
Óscar García Amor
https://ogarcia.me/
Drone workshop
By Óscar García Amor
Drone workshop
Drone es una plataforma de Entrega Continua (Continuous Delivery) que automatiza tus flujos de trabajo desde las pruebas a la puesta en producción.
- 245