INTEGRACIÓN CONTINUA

para

DISPOSITIVOS EMBEBIDOS

usando

Jenkins

docker

CONAN

y

Meetup Madrid C/C++  |  Daniel Manzaneque  @Dani_MTB

Meetup Madrid C/C++  |  Daniel Manzaneque  @Dani_MTB

Ventajas de establecer una filosofía DevOps para sistemas embebidos

  • Entorno controlado
  • Automatización del proceso

(Entre otras)

  • Compilaciones reproducibles
  • Agilidad en el desarrollo

Meetup Madrid C/C++  |  Daniel Manzaneque  @Dani_MTB

Meetup Madrid C/C++  |  Daniel Manzaneque  @Dani_MTB

  • OpenSource (MIT) incluyendo servidor

CONAN C/C++ Package Manager

  • Integración con cualquier build system: CMake, Visual, Make, QMake...
  • Gestión de fuentes y binarios
  • Comunidad muy activa
  • Conan Center: 140+ Librerías con binrarios listos para usar

Meetup Madrid C/C++  |  Daniel Manzaneque  @Dani_MTB

Meetup Madrid C/C++  |  Daniel Manzaneque  @Dani_MTB

Meetup Madrid C/C++  |  Daniel Manzaneque  @Dani_MTB

Meetup Madrid C/C++  |  Daniel Manzaneque  @Dani_MTB

Jenkins y Docker

  • Compilación dentro del contenedor
  • Trabajo de Jenkins en modo Multibranch
  • Jenkinsfile
    • Artifactory Plugin
    • Docker
    • Mismos pasos para crear el paquete de Conan

Meetup Madrid C/C++  |  Daniel Manzaneque  @Dani_MTB

Meetup Madrid C/C++  |  Daniel Manzaneque  @Dani_MTB

Jenkinsfile

Meetup Madrid C/C++  |  Daniel Manzaneque  @Dani_MTB

Meetup Madrid C/C++  |  Daniel Manzaneque  @Dani_MTB

Conclusiones

  • Esto es un ejemplo:
    • Más etapas de CI para testing, QA...
    • Hardware in the loop
    • Promoción a producción de manera controlada
  • No hay excusas para no implementar sistema DevOps:
    • Gestionar los binarios es importante
    • Hay muchas herramientas a nuestra disposición

Meetup Madrid C/C++  |  Daniel Manzaneque  @Dani_MTB

¡GRACIAS!

INFO

Integración continua para dispositivos embebidos usando Jenkins, Docker y Conan

By Dani Manzaneque

Integración continua para dispositivos embebidos usando Jenkins, Docker y Conan

  • 160