Skip to content

Self-contained repos with its own Dockerfile and Jenkinsfile and no deb packages

Proposers

  • Gerardo García (Telefónica)

Description

This feature is intended to make life easier for developers, by having in each repo the required files (Dockerfile, scripts, Jenkinsfile) to independently test the code and build the docker image associated to the repo. Common practices in code development and CI will be followed, which is expected to simplify the time to contribute for an arriving OSM contributor.

Among other things, this feature is expected to cover the following:

  • Use of a common standardized docker image for linting and unit tests
  • Reduce the dependencies on centralized devops repository, which will host only the CI files for E2E tests.
  • Remove the debian package generation.
  • Install common and IM dependencies via pip+git
  • Reduce the size of images by using official Python images based on Alpine, and incorporating the best practices in image build process.
  • New Dockerfiles for each repo.
  • A new CI/CD Jenkins pipeline that will be fully driven by the Jenkinsfile in the own repo, leading to the generation of docker images for that module.

Demo or definition of done

The new CI/CD Jenkins pipeline for OSM will be used by all current active repos, leading to images generated by those pipelines.

Edited by garciadeblas