From 17c5c4506e3e06ee62ab44236a95f300d72b8192 Mon Sep 17 00:00:00 2001 From: Roman Gorshunov Date: Wed, 13 Mar 2019 18:15:28 +0100 Subject: [PATCH] Non-Ubuntu based container builds Added section describing container builds with non-Ubuntu based images in mind. Image tagging naming convention is updated to have distribution specific identifier in suffix. Change-Id: I477ff5a1662747a4962d82332171861ea6e93e3c --- .../approved/airship_multi_linux_distros.rst | 35 +++++++++++++++++++ 1 file changed, 35 insertions(+) diff --git a/specs/approved/airship_multi_linux_distros.rst b/specs/approved/airship_multi_linux_distros.rst index 3a6aae5..5e44676 100644 --- a/specs/approved/airship_multi_linux_distros.rst +++ b/specs/approved/airship_multi_linux_distros.rst @@ -61,6 +61,34 @@ Most Airship components will be impacted by this spec: Proposed change =============== +Container Builds +---------------- + +- As for now, Ubuntu-based containers remain to be default to be built +- CI system for the Ubuntu-based containers must not be affected by + implementation of this spec (Zuul jobs, Makefile, etc.) +- Distributive-dependant ``Dockerfile`` naming convention is to add a + distributive flavour suffix, optionally specifying version after underscore: + ``Dockerfile.[_]``; e.g. + ``Dockerfile.opensuse`` +- Public non-Ubuntu container images are to be published along with Ubuntu-based + images on `quay.io`_ under + `airshipit/ `_ organization +- Repository naming convention remains exactly same for airship component. + ``airshipit/``; + e.g. ``airshipit/armada`` +- Updated image tagging naming convention is to add a dash separator suffix + after tags based on Git commit ID of the code ``:``, and + additional ``:master`` (branch-based) and ``:latest`` (latest master) tags, + following with a distributive flavour, optionally specifying distribution + version after underscore [#f1]_: + ``:-[_]``; + e.g. ``armada:master-opensuse_15`` +- As for now, Makefiles, Shell scripts, Shell script templates in Helm charts, + Ansible jobs, Zuul and Jenkins jobs continue to work without changes for + Ubuntu-based containers, and support non-Ubuntu containers by provision of + additional variables or command line arguments + Pegleg ------ @@ -259,3 +287,10 @@ References ========== Any external references (other than the direct links above) + +.. rubric:: Footnotes + +.. [#f1] Based on recommendation from `quay.io`_ + technical support. + +.. _quay.io: https://quay.io/