lgrosz / yocto-dockerfiles

This repository is for -base and -builder containers for building derivative containers (such as poky-container) for containerized Yocto Project builds.
GNU General Public License v2.0
0 stars 0 forks source link

Better image labelling and tagging #1

Open lgrosz opened 1 year ago

lgrosz commented 1 year ago

Right now there are two types of images, base and builder. Base has the general dependencies and builder is an image which can be loaded to actually build a Yocto project. Each base (and builder) can have various base distributions like Ubuntu, Fedora, etc, as Yocto supports these distributions as host/build distributions. Since these images are required to build Yocto projects, their label is yocto while their tag is a hyphenated "base-distro(+version)" and "variant", e.g. ubuntu-20.04-base.

I think this naming leaves a lot to be desired. For example, what if we'd like to host build environment for various versions of Yocto (even EOL versions; isn't Docker convenient for keeping legacy build systems alive). I'd like to propose a labelling and tagging convention that is convenient for this use case as well as satisfies the old use case.

My initial thought I'd like to get down on paper is.. yocto-<var>:<yocto-version>_<distro>-<distro-version>.

For example...

We can even have one image tagged with the yocto numeric version...

If anyone happens to be scouring forks before I make an official proposal. Let me know your thoughts. Maybe this doesn't make sense philosophically - I don't use Docker that much so maybe I am doing this wrong.

lgrosz commented 1 year ago

Another option is yocto-<var>-<distro>:<yocto-version>-<distro-version>, e.g. yocto-base-ubuntu:zeus-18.04 or yocto-<var>_<distro>:<yocto-version>_<distro-version>, e.g. yocto-base_ubuntu:zeus_18.04