-
Notifications
You must be signed in to change notification settings - Fork 11
build: Isolate Docker release caches #1156
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
Changes from all commits
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change |
|---|---|---|
|
|
@@ -30,6 +30,15 @@ $ make docker-release tag=<TAG> | |
| Where `<TAG>` is the name of the next release of `wavelength`, e.g. | ||
| `v0.1.0-rc2`. | ||
|
|
||
| The release container only mounts the source checkout, which lets it write the | ||
| finished archives back to the host. Its Go build and module caches stay inside | ||
| the container and are discarded with it. The release build never reads, | ||
| writes, or clears the host's Go caches. | ||
|
|
||
| Allow at least 5 GB of free space in Docker's storage for these temporary | ||
|
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. 🟡 The new disk-space figure and the "clears its build cache between target platforms" behavior only get exercised on a multi-platform run, but the PR's test notes cover |
||
| caches. The release clears its build cache between target platforms, and | ||
| Docker removes the remaining cache data when the container exits. | ||
|
|
||
| ### Linux/Windows (WSL) | ||
|
|
||
| No prior set up beyond a pinned `go` toolchain (see `GO_VERSION` in the | ||
|
|
||
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
🟡
F1(Minor) — Release CI may still cache now-unused Go cache paths ·Makefile:191Dropping the two mounts means every release run starts from an empty module cache and a cold build cache, so the container re-downloads the full module graph each time.
docs/release.mdstates that.github/workflows/release.yamlrunsmake docker-release; that workflow is not in the provided context, so if it carries anactions/cachestep keyed on the hostGOCACHE/GOMODCACHEpaths those mounts used to expose, that cache is now dead weight on every release and should be removed alongside this change.