You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
There are many Dockerfiles in this repo that are all installing a specific version of some software asset. It's important that the referenced version is consistently referenced across all the Dockerfiles.
Note
There may need to be some differences in the versions used between Dockerfiles for compatibility reasons based on the usage of those images.
Keeping these versions all in sync is a maintenance burden because it requires someone to have to search through all the Dockerfiles to understand which ones are affected and need to be updated. Having a centrally-defined location for these software versions would solve this problem.
Precedence for this approach already exists at https://github.com/dotnet/dotnet-docker (MinGit example). That repo uses an update-dependencies tool to keep a centrally-defined JSON file updated with references to versions. That version is then used as input for generating the Dockerfiles via templates. Instead of templating the Dockerfiles, another solution may be to pass in the version value as an ARG (however, see dotnet/docker-tools#1505).
The text was updated successfully, but these errors were encountered:
I imagine if we added templating to this repo, we would want keep it very very light. It would be easy to get carried away. I am not super enthusiastic about onboarding completely new things to Cottle. Perhaps an opportunity to try something different here.
I don't love the ARGS approach either, since without a default version present in the Dockerfile they would be more annoying to build.
There are many Dockerfiles in this repo that are all installing a specific version of some software asset. It's important that the referenced version is consistently referenced across all the Dockerfiles.
Note
There may need to be some differences in the versions used between Dockerfiles for compatibility reasons based on the usage of those images.
Keeping these versions all in sync is a maintenance burden because it requires someone to have to search through all the Dockerfiles to understand which ones are affected and need to be updated. Having a centrally-defined location for these software versions would solve this problem.
Precedence for this approach already exists at https://github.com/dotnet/dotnet-docker (MinGit example). That repo uses an update-dependencies tool to keep a centrally-defined JSON file updated with references to versions. That version is then used as input for generating the Dockerfiles via templates. Instead of templating the Dockerfiles, another solution may be to pass in the version value as an
ARG
(however, see dotnet/docker-tools#1505).The text was updated successfully, but these errors were encountered: