Skip to content

Rework repository to generate most files automatically

Currently, there is a lot of duplicate work in maintaining the images and configuration file that cuold be shared more.

My proposal is to produce all those files as jinja2 templates together with yaml configuration files.

This has multiple advantages:

  • we don't have to repeat the same code for multiple images (for instance testsuite/fedora-{27,28,29} are the same....but for one number)
  • It is simpler to see what is happening and the differences between each image

And the following disadvantage:

  • it is slightly harder to contribute
  • generated files needs to be checked in and kept in sync

The second problem is easy to fix: adding a check in CI that ensures that templates are up to date and otherwise fail.

Given the rest, I think it is the way to go.

My suggestion would be:

  • move the building of the gitlab-ci.yml to jinja2/yml (!82 (merged))
  • move the building of test images to jinja2/yml
  • move the building of the rest of the images to jinja2/yml
  • thoroughly document the changes to it is easy for newcomers
  • add a script to build and test all images locally
Edited by Chandan Singh