Commit bb2f804
fix: pin Deno Docker image and pass release version via job outputs (#883)
## Summary
- **Pin Dockerfile base image** to `denoland/deno:2.7.5` instead of
`:latest` for reproducible, deterministic builds
- **Pass version via job outputs** from the `release` job to the
`docker` job instead of querying `gh release view`, which could
theoretically return a different release
## Impact
These changes make the release pipeline more deterministic:
1. **Reproducible Docker builds** — Pinning the Deno base image means
the same Dockerfile produces the same image regardless of when it's
built. Previously, `:latest` meant builds could silently pick up a new
Deno version with breaking changes or security issues.
2. **Correct version propagation** — The docker job now receives the
exact version from the release job that created it via
`needs.release.outputs.version`. Previously, `gh release view` returned
the repo's latest release, which could be wrong if a manual release was
created between jobs.
## Why this is correct
- The `release` job already computes the version in the `version` step —
we simply expose it as a job output
- The `docker` job already declares `needs: release`, so the output is
guaranteed to be available
- No behavioral change in the happy path; this only eliminates edge-case
failure modes
Addresses review feedback from #882.
## Test plan
- [ ] Verify CI passes on this PR
- [ ] Confirm release workflow still builds and pushes Docker images
correctly on next merge
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com>1 parent 5871ffe commit bb2f804
2 files changed
Lines changed: 9 additions & 8 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
17 | 17 | | |
18 | 18 | | |
19 | 19 | | |
| 20 | + | |
| 21 | + | |
20 | 22 | | |
21 | 23 | | |
22 | 24 | | |
| |||
180 | 182 | | |
181 | 183 | | |
182 | 184 | | |
| 185 | + | |
183 | 186 | | |
184 | 187 | | |
185 | | - | |
186 | | - | |
187 | | - | |
188 | | - | |
189 | | - | |
| 188 | + | |
| 189 | + | |
| 190 | + | |
| 191 | + | |
190 | 192 | | |
191 | 193 | | |
192 | 194 | | |
193 | | - | |
194 | | - | |
| 195 | + | |
195 | 196 | | |
196 | 197 | | |
197 | 198 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1 | | - | |
| 1 | + | |
2 | 2 | | |
3 | 3 | | |
4 | 4 | | |
| |||
0 commit comments