Templatization of Dockerfile#40
Draft
AbcSxyZ wants to merge 2 commits intodogecoin:mainfrom
AbcSxyZ:template
Draft
Templatization of Dockerfile#40AbcSxyZ wants to merge 2 commits intodogecoin:mainfrom AbcSxyZ:template
AbcSxyZ wants to merge 2 commits intodogecoin:mainfrom
AbcSxyZ:template
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
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_templatemay 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.