Indice [TOC] --- # Tranferencia Devops ###### tags: `devops` `tranferencia` ## dias ### Día 1 - [X] objetivos del area - [X] jira - dashboard de jira: [dashboard1](https://jira.ascentio.com.ar/secure/RapidBoard.jspa?rapidView=104&projectKey=DOS&selectedIssue=DOS-87) [dashboard2](https://jira.ascentio.com.ar/secure/RapidBoard.jspa?rapidView=148&projectKey=DOS) - [X] nexus - [X] jenkins nuevo - [X] https://jenkins-new.ascentio.com.ar - [X] presentación - [X] asc-devkit ### Día 2 - [X] jenkins - nodos nuevo: usan docker, en principio es mucho mas facil agregar nodos, porque requiren tener docker. si las herramientas de build cambian, se actualiza la imagen usada para hacer los builds - nodos jenkins viejo: son virtuales con todas las herrasmientas instaladas - [X] patron de aplicaciones docker - Un proyecto : esta formado por 2 repositorios - el repositorio de la aplicación: (ejmplo [L0processor](https://jenkins-new.ascentio.com.ar/job/MissionPlanning/job/L0processor/job/L0processor/)) - el repositorio de la imagen docker (ejemplo: [l0-processor-image](https://jenkins-new.ascentio.com.ar/job/MissionPlanning/job/L0processor/job/l0-processor-image/)) ### Dia 3 - Dudas - releases de proyectos angular: cambios de path y versiones automatizadas (que caminos tomar?) - se puede agregar como parametro la version de las unidades en los proyectos que generan las imagenes docker - se puede llegar a automatizar usando artifactor, la idea es que el job de la imagen, tome algun resultado del job de la aplicacion - otra opcino es que el job de la aplicacion, inice el job de la imagen. Una especie de release en cascada. - [X] Proyecto Deploy (FTP y mail): Este proyecto descarga los instaladores de 1 aplicación python y los publica en un server FTP, luego manda un mail notificando el relase realizado. - repositorio: https://gitlab.ascentio.com.ar/scanterra/scanterra-pedidosya - job: https://jenkins-new.ascentio.com.ar/job/ScanTerra/job/scanterra-pedidosya/ ### Dia 4 - Dudas: - [ ] path a archivos resources o tmp de test - en el caso de los test necesiten directorios (ya que el proycto puede tener hardrcode los path) Se puede definir esos path en el Dockerfile de la aplciacion (que usa jekins para hacer el buil y ejecutar los test). - Otro punto puede ser tener test de integracion donde se manejen esos path. - Se pueden crear los directorios o cargar los archivos en el Docker file de la app. - [ ] sonar y python y sonar del jenkins viejo - Se necesita tener un server actualizado - agregar a jenkins :https://plugins.jenkins.io/sonargraph-integration/ - Queda ver si la integracion jenkins-sonar se hace en el pipeline o en el job de jenkins ### Dia 4 - [ ] registry de docker de releases en nexus - revisar el asc-devkit para ver si se tienen la confiruacion para descargar las imagenes - actualizar el nombre de la imagen los los proyectos usando yeoman - [ ] gitlab - grupo Dev - - jenkins: gestion de usuarios ### Dia 5 - [ ] proyectos de deploy (jenkins, ansible) - [ ] Agregar proyectos al jenkins nuevo ## Mejoras pendientes / recomendaciones - [ ] sonarQube - [ ] redfactorizar el stage de release - [M] - [R] ## Herramientas - docker - ansible - jenkins - puppet (ya no se usa tanto, esta en proyectos legacy de saocom), fue reemplazado por ansible - sonarQube > Written with [StackEdit](https://stackedit.io/).