Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Here is a first suggestion for a templating mechanism to generate images files. It introduces a manifest/version file to manage all versions/distros/versions/hashes. It's not defined how the manifest should be designed, it's a discussion base.
I used a built-in python Template system to use a variable with
%
delimiter in the Dockerfile to dynamically change it with python variables, it enables regular Dockerfile variable with$
and template variable with%
.About alpine & potentially other bases, a lot may evolve, I tried to figure out some components which may change to update it when things evolve.
load_template
may select different base according to a variant/distro for example, variables for templates are set in 3 lines and withrelease_files
, which may be updated depending on manifest evolution.I followed the behavior of openjdk apply-templates.sh which delete and recreate all files. Their template script vary, the current script is pretty dumb and do not provide option, behavior to discuss too.