For years we’ve been using this patern on our Docker images, which is composed by v0.INCREMENTAL_NUMBER
, e.g. tlcpack/ci_cpu:v0.80
, and when we update any image we bump the minor number, just as a way to release a new version.
As the project is growing and given we recently have been improving the Docker images building process, I think it is time to consider using a more meaningful tagging scheme, so that it is easier to identify what is included in the images we’re running in our CI.
When looking/using a Docker image, usually we would be interested in:
- How long ago was this image generated?
- What is the last change added in the current images being used in production?
None of these questions can be answered by our current numbering scheme, and to get that information we would usually need to do some digging and inspecting the image to see what is in there.
Proposal
As an improvement to the current scheme, I’m suggesting we adopt the tagging scheme currently used in the tlcpackstaging
repository, composed by:
- a timestamp
YYYYMMDD-HHMMSS
- the last short git hash added in that image
There was some previous mentions to that topic by @manupa-arm in https://github.com/apache/tvm/issues/9659.
One example would be tlcpackstaging/ci_arm:20220201-115323-2af42ba8e
. This tells us when this image was generated and up to which point in the repository is included.
I’d like to see what others think about this idea, as I’m planning to submit a proper RFC in tvm-rfcs
.
cc @manupa-arm @areusch @Mousius @ramana-arm @driazati @gromero @tqchen