Skip to content

ci: adopt shared reusable release workflows + pin-at-release OCI publishing#139

Merged
dcmcand merged 7 commits into
mainfrom
feat/oci-release-automation
Jul 15, 2026
Merged

ci: adopt shared reusable release workflows + pin-at-release OCI publishing#139
dcmcand merged 7 commits into
mainfrom
feat/oci-release-automation

Conversation

@dcmcand

@dcmcand dcmcand commented Jul 15, 2026

Copy link
Copy Markdown
Contributor

Migrates the pack's release pipeline to the shared reusable workflows in nebari-dev/.github (see nebari-dev/.github#43) and the pin-at-release model. Removes the three release bugs the old git-tag model had: appVersion drift, the v-prefix image-tag mismatch, and the floating model-downloader:latest init image.

Changes

  • Operator: the model-downloader init image is configurable via LLM_MODEL_DOWNLOADER_IMAGE (defaults to the built-in constant when unset); table-driven test added.
  • Chart: image tags decoupled from .Chart.AppVersion (templates use .Values.<c>.image.tag); tags float to latest on main and are pinned to a build sha at release time; new modelDownloader.image block wired into the operator env. Image paths updated nebari-llm-serving-pack -> llm-serving-pack, following the repo rename.
  • CI: build-images.yaml and release.yaml are now thin callers of the reusable workflows; build-images also runs on a Chart.yaml bump so a release commit produces its images; .github/release.yml gives categorized changelog notes.
  • Docs: cicd-and-releasing.md rewritten to explain the pin-at-release flow (bump Chart.yaml in a PR, merge, and the chart publishes to OCI with pinned images and generated release notes).

Merge ordering (draft until then)

Depends on nebari-dev/.github#43 - that must merge and be tagged v1 first. The uses: refs here point at the bring-up branch (@feat/pack-release-workflows) and must be re-pinned to @v1 before merge; TODO comments mark all five call sites.

Verification

go test, helm lint / helm template (renders the four images at the new path, model-downloader env correct, no appVersion in any tag), actionlint, and the docs build all pass locally. Live behavior (quay push, OCI publish, GitHub Release with categorized notes) is exercised on the first real run after merge.

Image-path rename follow-through

The ghcr.io/.../llm-serving-pack/... image-path rename is propagated to README.md and ui-development.md in this PR. configuration and shared-storage are owned by the docs PR (#138, converted to .mdx there), so their image paths are fixed in that PR to avoid a merge conflict.

Out of scope (tracked separately)

The Go module path (github.com/nebari-dev/nebari-llm-serving-pack/...) and the github.com repo/issue URLs, which GitHub redirects handle - part of the broader repo-rename cleanup.

dcmcand added 6 commits July 15, 2026 14:58
…og config

Replace the per-image build steps in build-images.yaml with thin caller
jobs that invoke the shared nebari-dev/.github pack-build-image reusable
workflow, add a release.yaml caller for pack-release, and add
.github/release.yml with changelog categories keyed on this repo's
labels. The @feat/pack-release-workflows ref is a bring-up ref and must
be re-pinned to v1 before this PR merges.
Add charts/nebari-llm-serving/Chart.yaml to the push trigger paths in
build-images.yaml so the release commit (a Chart.yaml version bump)
produces sha-<commit> images before the release workflow pins the
chart to that sha. Update the CI/CD docs to reflect that a release
now triggers both workflows in parallel instead of describing this as
a known gap.
Follows the repo rename; only the ghcr.io image paths change (the
github.com repo URLs are redirect-handled and left for the repo-rename
cleanup). Go module path untouched.
@github-actions

Copy link
Copy Markdown

📄 Docs preview for feat/oci-release-automation:
https://feat-oci-release-automation.llm-serving-pack.pages.dev

Now that nebari-dev/.github#43 is merged and tagged v1, pin the caller
refs to the release tag and drop the bring-up TODOs.
@dcmcand
dcmcand marked this pull request as ready for review July 15, 2026 16:24
@dcmcand
dcmcand merged commit f45a465 into main Jul 15, 2026
12 checks passed
@dcmcand
dcmcand deleted the feat/oci-release-automation branch July 15, 2026 16:28
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant