-
Notifications
You must be signed in to change notification settings - Fork 1.9k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Editing the manifest.json
file by hand is time-consuming and error-prone
#4704
Labels
Milestone
Comments
Related to dotnet/docker-tools#157 |
[Triage] We should pursue a low-cost design/POC that can be a solution here. The current manifest schema offers a lot of flexibility that we don't want to lose. Any new solution should be able to express those scenarios. |
This was referenced Nov 28, 2023
lbussell
changed the title
Improve the editing experience for dotnet-docker's manifest
Editing the May 6, 2024
manifest.json
file by hand is time-consuming and error-prone
Edited the title to reflect the issue and not a potential solution. Also, solving #2316 might get us part-way to a solution here. |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Describe the Problem
.NET Docker's manifest.json is over 7000 lines long and can only be edited by hand. This is an extremely time-consuming and error-prone process that needs to happen every time we move or update floating tags, and add or remove linux distros.
Additionally, there is lots of duplication of the same information inside and outside of the manifest file. For example,
dotnet-docker/manifest.json
Lines 965 to 1009 in 5b22241
The .NET version, architecture, and operating system are repeated constantly throughout this snippet. The tags are plaintext except for the product version variables - while this is nice for flexibility we always update them based on a pattern. It is very easy to get wrong, see:
latest
tag missing frommain
branch #4060latest
tag is not getting updated in mcr.microsoft.com/dotnet/core-nightly/runtime-deps #2307There are many more instances caught in code review.
Describe the Solution
The intention of this issue is to start a discussion on how we can improve the situation.
I have thought of a few potential solutions:
mainfest.json
using a template.manifest.json
schema.manifest.json
schema has not changed dramatically since it was created many years ago. This could allow us to re-think many aspects of the repo and take advantage ofbuildx
/buildkit
/multi-arch Dockerfiles/whatever new Docker features exist today.The text was updated successfully, but these errors were encountered: