Skip to content

docs(self-managed): add 0.6.2 patch and staged upgrade documentation - #2195

Draft
sbaum1994 wants to merge 4 commits into
mainfrom
docs/2191-legacy-0.6.2-upgrade
Draft

sbaum1994 wants to merge 4 commits into
mainfrom
docs/2191-legacy-0.6.2-upgrade

Conversation

@sbaum1994

@sbaum1994 sbaum1994 commented Oct 1, 2026 •

Copy link
Copy Markdown
Collaborator

TL;DR

Prepare versioned 0.6.2 documentation and the required 0.6.1 -> 0.6.2 -> 1.0.1 upgrade path. Operators need the legacy patch inventory and its OpenBao catalog refresh procedure before the staged 1.0.1 migration. Also repair the earlier 0.6.0-to-0.6.1 procedure so operators can retain Cassandra credentials, perform the OpenBao rotation, and recover the JWT plugin catalog before a full stack sync.

This PR is a draft. Stable 0.6.2 publication, missing public artifacts, and live upgrade qualification remain required before merging. Candidate provenance and publication status are recorded in the manifest.

Additional Details

  • Add the 0.6.2 full documentation tree from historical 0.6.1, matching Fern navigation, and an isolated catalog snapshot. Keep 1.0.1 as the latest/default version and preserve 0.6.1.
  • Add release notes and the patch procedure under Overview, including backups, configuration preservation, hook ordering, conditional rotation, validation, and recovery. The procedure uses six numbered steps. Because the migration image is unchanged, the procedure distinguishes new migration Jobs by UID.
  • Move the onward procedure to 0.6.2-to-1.0.1 while retaining its Cassandra, ICMS, NVCT, and OpenBao gates. The old URL remains a landing page, and existing redirects still resolve there.
  • Extend snapshot tooling with explicit legacy inventory/source inputs and draft handling. Exclude current-release overrides, supplementary artifacts, and separate release sets; keep ordinary sync from writing frozen trees.

The snapshot comes from 0.6.2-rc.0, commit 55803ad7cb647de45cf29415cfd3766225534617. It retains that candidate identity instead of presenting it as stable 0.6.2. Its 21 releases resolve 57 artifacts; the public manifest applies the existing denylist.

For the Reviewer

Most added files are the historical documentation copy. Review the new release notes, manifest, upgrade pages, navigation, catalog, and legacy snapshot tooling first.

The public 0.6.1 bundle was downloaded and compared with the candidate: OpenBao is the only changed chart pin. Public NGC queries verified 48 of 57 candidate artifact versions on 2026-10-01, including 20 exact chart archive downloads. The cached OpenBao 0.32.6 chart used for regression checks matches the public archive SHA-256. Unverified versions remain publication pending.

Before this leaves draft status: qualify the stable patch, stale-catalog recovery, and a clean onward migration; reconcile the snapshot with the stable inventory and bundle; resolve required publication gaps; review historical compute-plane/CLI examples outside the control-plane inventory; update the manifest status. Do not infer availability or data continuity from rendered-chart checks.

Review revisions

  • Move the 0.6.1-to-0.6.2 procedure into Overview and update navigation, links, and the previous route's redirect.
  • Rewrite the patch into six direct steps, preserving runtime pins, backups, hook ordering, conditional rotation, and validation.
  • Keep publication status on manifest pages. Remove repeated warnings from release notes, landing pages, and image mirroring. Generator tests keep that separation and reject fabricated download commands.
  • Restore the frozen 1.0.1 installation page to its original content.
  • Fix the historical 0.6.0-to-0.6.1 guide in Overview, 0.6.1, and the 0.6.2 snapshot. Add a private backup of the Bitnami Cassandra Secret, decoded password retrieval, and an interactive login; preserve the superuser and application role credentials separately.
  • Add the required OpenBao 2.5.5 update and controlled rotation to that guide. Document the fix OpenBao JWT plugin catalog during image upgrades #1627 backend is nil recovery: compute the target binary digest, register it, rotate again, and require a new successful migrations Job and fresh JWT/injection checks. Link recovery and backup steps from the release notes, and require Cassandra validation before the full stack sync.

For QA

Passed:

  • go test -C tools/docs-version-sync ./...
  • go vet -C tools/docs-version-sync ./...
  • bash tools/scripts/test/test-cut-docs-version
  • ./tools/ci/check-doc-version-sync
  • Explicit legacy snapshot --check against the candidate inventory
  • ./tools/ci/check-docs and fern check --warnings: zero errors; Fern skips its authenticated missing-redirect check without a token
  • Offline verification of the legacy upgrade redirects, the moved patch-page redirect, and the unchanged 1.0.1 default
  • Published OpenBao chart regression checks from the exact candidate checkout, including image overrides and refresh-before-migrations ordering
  • git diff --check and root skill-fanout validation
  • Final documentation validation: zero errors and one existing Fern missing-redirect warning
  • Historical guide validation: 38 Bash snippets parse; all three copies agree; fixture checks exercise private backup permissions, interactive login arguments, failed/invalid digest handling, plugin registration, and new migration Job identity/failure gates

The newly documented 0.6.0-to-0.6.1 procedure and stale-catalog recovery were checked against released chart sources and fixtures. They were not executed against a live 0.6.0 deployment. The live results below cover the later upgrade paths.

Live QA completed in an isolated two-node ARM64 k3d environment with fake GPUs, one Cassandra member, and three OpenBao and NATS members:

Path / check Result
Released 0.6.1 -> 0.6.2-rc.0 Healthy-source path passed; 654 successful probes, zero failures; refresh completed before a new migration Job; no OpenBao rotation needed with the identical server template and correct source catalog
Candidate -> released control-plane 1.0.1 Bounded migrations, bridge backfill/validation, NVCT contract, full sync and repeat completed; original data and worker retained; availability failed with 99 probe failures
Compute NVCA/operator 3.0.3 -> 3.10.0 Original cluster and cluster-group IDs preserved; sync and repeat passed; compute observation window had 237 successful probes and no failures
Retained function Original function/version, deployment, GPU specification, instance and request IDs retained; function/deployment creation times unchanged; original invocation successful at the end
Worker continuity Same original pod UID and both container IDs; 840 observations with zero restarts
Target auth and storage Fresh JWT and new admission-time injection passed; original PVC identities, all seven NATS streams and existing NATS user key retained

Across the full observation window there were 2,481 successes and 99 failures. Failures occurred during the single-member Cassandra restart/reconnection (77), OpenBao transition (21 HTTP 401), and first full sync (one invocation connection error). The migration runner was paused during Cassandra recovery, then continued after clean-ledger and health checks. This is a diagnostic rehearsal, not a clean end-to-end or zero-downtime qualification. The repeat control-plane sync had no failed probes.

The retained task was already ERRORED due to unavailable worker images. Its identity and health survived the contract, but completed-task and shared-storage behavior remain unqualified. Optional add-ons, observability, real GPUs, ingress/DNS/TLS, independent failure domains, stale-catalog recovery, and backup restore were excluded. Same-version upstream helper images, an explicit control-plane profile, and local resource settings were QA adaptations; unavailable NGC mirrors were not qualified through those overrides.

Remaining qualification blockers: stable 0.6.2 publication/reconciliation; worker artifacts (#2196); receipt helper (#2197); released CLI 1.16.2 profile export (#1550); active-instance timestamp discrepancy (#2199); and a clean production-topology upgrade rehearsal. The QA cluster and evidence are retained. Publication and qualification status stay on the manifest; upgrade steps keep their health and recovery requirements.

Dependencies

No new dependencies or version changes. go.sum gains missing checksums for existing dependencies needed to run the tests. No license or NOTICE change.

Issues

Closes #2191

Relates to #1627

Related stack patch: #2190. Release tracking: #2189. QA findings: #2196, #2197, #2199; existing CLI issue: #1550.

Snapshot the legacy documentation from an explicit candidate inventory and preserve the staged onward migration gates. Keep candidate provenance and publication gaps visible until stable release and live upgrade qualification complete.

Relates to #2191

Signed-off-by: Stephanie Baum <sbaum@nvidia.com>
@coderabbitai

coderabbitai Bot commented Oct 1, 2026

Copy link
Copy Markdown

Important

Draft PR not reviewed

Draft PRs are not automatically reviewed by default.

  • Trigger a manual review

To automatically review draft PRs, update your CodeRabbit configuration:

reviews:
  auto_review:
    drafts: true
  • Autopilot · Keep fixing CodeRabbit findings and required CI, and resolving merge conflicts

Autopilot is currently an internal CodeRabbit preview.


Comment @coderabbitai help to get the list of available commands.

@github-actions

github-actions Bot commented Oct 1, 2026

Copy link
Copy Markdown
Contributor

Document the healthy-source patch rehearsal and the onward migration results. Preserve qualification warnings for the stable release, availability failures, and missing public artifacts.

Relates to #2191

Signed-off-by: Stephanie Baum <sbaum@nvidia.com>
Comment thread docs/overview/release-notes/1.0.1.md Outdated
Comment thread docs/overview/release-notes/index.md Outdated
Comment thread docs/overview/release-notes/0.6.1-to-1.0.1-upgrade.md Outdated
Comment thread docs/self-managed-1.0.1/installation.md Outdated
Comment thread docs/overview/release-notes/0.6.1-to-1.0.1-upgrade.md Outdated
Comment thread docs/self-managed-0.6.2/release-notes/0.6.1-to-0.6.2-upgrade.md Outdated
Comment thread docs/self-managed-0.6.2/release-notes/0.6.1-to-0.6.2-upgrade.md Outdated
Move the 0.6.1-to-0.6.2 procedure into Overview and rewrite its ordered steps. Keep publication status on manifest pages, preserve generator download protections, and restore the frozen 1.0.1 installation page.

Relates to #2191

Signed-off-by: Stephanie Baum <sbaum@nvidia.com>
Back up and retain Bitnami Cassandra credentials before the new chart
removes its Secret. Add the OpenBao upgrade and controlled rotation to the
legacy guide, document JWT catalog recovery, and validate both components
before syncing the full stack. Keep the historical copies consistent.

Relates to #2191
Relates to #1627

Signed-off-by: Stephanie Baum <sbaum@nvidia.com>
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.

docs: add 0.6.2 release documentation and require it before upgrading to 1.0.1

1 participant