release: reconcile Pulse images missing from stack inventories
Nobody has claimed this yet.
- Dominant language
- Go
- Stars
- 218
- Forks
- 72
- Avg merge
- 1d 9h
- Merged PRs (30d)
- 417
Description
Summary
Reconcile the nine images present in the latest released-image comparison but absent from the released self-managed stack inventory. For each image, determine whether it is part of the self-managed control plane, observability plane, or compute plane, including optional and runtime-delivered components.
If an image is shipped by a stack, make it appear in that stack's release inventory. If it is intentionally outside the stacks, record the exclusion and owning distribution path.
Images to classify
nvcf-unbound:0.10.2byoo-otel-collector:0.160.0-nv-0.2.5nvcf-otel-collector:0.160.0-nv-0.2.5llm-api-gateway-rate-limit-sync-worker:0.14.2nvcf-event-ledger:0.15.2nvcf-worker-task-oss:1.1.2pylon:0.18.0cluster-validator:3.8.0tools:3.8.0
Known cases that need explicit treatment:
- Pylon is a conditional runtime image configured through the self-managed stack, but it is absent from the attached resolved inventory.
- The compute-plane OTel collector and cluster validator are disabled by default. Decide whether a release inventory represents only a default render or every image that the released stack can deploy.
- Event Ledger currently has chart and route sources but is not included as a stack release.
Release-asset gap
The self-managed release has one combined inventory asset, but the latest observability and compute-plane GitHub releases have no attached inventory assets. Add plane-scoped resolved inventory assets to those release workflows.
Acceptance criteria
- Each of the nine images has an explicit
includedornot part of this stackdecision with its owning plane and release surface. - Every image that a released stack can deploy is represented, including conditional, init, sidecar, migration, and runtime-configured images.
- Intentional exclusions document where the image is distributed and why it is outside the three stacks.
- Self-managed, observability, and compute-plane releases each attach a machine-readable image/chart inventory.
- Inventory generation tests cover conditional and source-only images such as Pylon.
Resources
- Parent: #1781
- Chart-production child: #1832
- Stack-consumption child: #1833
- Release configuration:
tools/ci/github-release-subprojects.json - Self-managed inventory configuration:
deploy/stacks/self-managed/release-inventory.yaml
By submitting this issue, you acknowledge that you are an assigned member of the NVCF development team and agree to follow our code of conduct and our contributing guidelines.
Contributor guide
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 with tools/ci/github-release-subprojects.json and deploy/stacks/self-managed/release-inventory.yaml, then review the parent issue #1781 and child issues #1832 and #1833. Trace how released inventories are generated and attached for each plane, including the existing inventory generation tests. Done means every listed image has an explicit ownership decision and each release has a machine-readable inventory asset.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- github-actions, go, kubernetes
- Domain
- devops, release
- Issue type
- Feature
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Active
- Clarity
- Mostly clear
- Newbie friendliness
- 48/100