Support Docker image builds for dev branches without significant per-branch manual work
Nobody has claimed this yet.
- Dominant language
- Go
- Stars
- 431
- Forks
- 44
- Avg merge
- 21h 18m
- Merged PRs (30d)
- 30
Description
We anticipate creating short-lived dev branches for new features being developed. Enabling the dev branch builds and publishing the tar.gz/zip results to blob storage is easy, but getting Docker images created/published requires more infra.
I think two approaches generally make sense for different situations, so it would make sense to implement both:
-
When we build a dev branch, have auto-update infra submit the PR into the
nightly(#169) branch, with a repo/tag suffix that matches (perhaps roughly) the dev branch name. We would have a new set of Dockerfiles for the dev branch, just like adding a new 1.16/1.17/... folder.This keeps the Docker repo relatively simple. We won't branch for each of 1.16/1.17/..., so why branch for a dev branch's builds?
-
Create a new dev branch in the go-docker repo. Otherwise the same as (1).
This is useful if we need to make big changes in the Dockerfiles or even the go-docker infra itself to support the new dev builds. We would want to work on those changes in a separate branch to avoid destabilizing unrelated
nightlyimages. For example, if we need to modify the environment to e.g. add OpenSSL to our images, this would probably be a good case for a go-docker dev branch.
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by inspecting the auto-update infrastructure and the existing nightly branch flow referenced in issue #169, then review the Dockerfiles and branch conventions in the go-docker repository. The work is done when dev-branch builds publish Docker images with branch-derived repository or tag suffixes, while supporting an isolated go-docker branch for larger image or infrastructure changes.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- docker, go
- Domain
- build-system, devops, infrastructure, release
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 25/100