Skip to content

docs(self-managed): correct 0.6.1 upgrade documentation - #569

Merged
sbaum1994 merged 7 commits into
mainfrom
docs/fix-061-upgrade-warnings
Jul 30, 2026
Merged

docs(self-managed): correct 0.6.1 upgrade documentation#569
sbaum1994 merged 7 commits into
mainfrom
docs/fix-061-upgrade-warnings

Conversation

@sbaum1994

@sbaum1994 sbaum1994 commented Jul 30, 2026

Copy link
Copy Markdown
Collaborator

TL;DR

Correct the Cassandra migration explanation and required values for the 0.6.0
to 0.6.1 upgrade. Publish the release-specific documents under the existing
0.6.1 RC documentation instead of the development documentation.

Additional Details (optional for docs, build, test, refactor, ci, chore, style, and revert PRs)

Why

The upgrade guide and Cassandra migration design note incorrectly state that
the StatefulSet name, selector, service name, and volume claim specification
differ. The name, selector, service name, pod management policy, and volume
claim specification remain unchanged.

The guide also overstates the values an operator must configure for in-place
volume adoption. The chart already supplies the correct image, filesystem group,
and cluster name for a standard deployment.

The 0.6.1 release notes and upgrade guide were published in the development
documentation. Release-specific documents belong to their matching versioned
documentation.

What changed

  • Identify volumeClaimTemplates.metadata.labels as the sole immutable-field
    difference.
  • Record that the new chart intentionally removes the existing
    app.kubernetes.io/name and app.kubernetes.io/instance labels.
  • Retain the documented StatefulSet recreation procedure.
  • Replace the broad migration-values list with the required
    cassandra.persistence.subPath: "data" subsection.
  • Name environments/<HELMFILE_ENV>.yaml as the file to update and tell
    operators to merge the subsection without replacing the file.
  • Move the 0.6.1 release notes and upgrade guide into docs/v0.6.1-rc.
  • Remove byte-identical 0.6.0 release-note copies from docs/user.
  • Update development and 0.6.1 RC navigation and release-note indexes.
  • Redirect the four former development release-note routes to their versioned
    locations.
  • Make the customer guide and Cassandra migration design note consistent.

Customer Release Notes

Corrects the Cassandra StatefulSet recreation and configuration guidance in the
self-managed 0.6.0 to 0.6.1 upgrade procedure. Publishes release notes and
upgrade guides with their corresponding documentation versions.

Plan Summary

Not applicable. Documentation only.

Usage

Select the 0.6.1 RC documentation to read the 0.6.1 release notes and upgrade
guide. Continue to follow the documented StatefulSet recreation procedure. Add
the documented cassandra.persistence.subPath subsection to the existing
environment file.

Notes

This change does not modify the Cassandra chart or restore the removed labels.
The development release-notes landing page remains and directs readers to the
documentation version menu.

References

Related Pull Requests

Dependencies

None.

For the Reviewer

Confirm that both Cassandra documents accurately distinguish the unchanged
StatefulSet fields from the intentional label removal. Confirm that the customer
guide shows only the required migration-specific values subsection. Confirm
that release-specific pages appear only in versioned documentation and that the
former development routes redirect to their matching versions.

For QA (optional for docs, build, test, refactor, ci, chore, style, and revert PRs)

  • ./tools/ci/check-docs: Fern reports 0 errors. The only warning is that the
    authenticated redirect check was skipped because no Fern token is configured.
  • The advisory docs-version-sync check cannot find imports.yaml from the
    isolated worktree.
  • Manual routing checks confirm that all affected Fern paths exist, all four
    redirects are present, and no release-specific files remain under
    docs/user/release-notes.
  • Moved-file comparisons and git diff --check pass.
  • QA is not needed for this documentation-only change.

Issues

Relates to #317

Checklist

  • I am familiar with the Contributing Guidelines.
  • I have signed off my commits for Developer Certificate of Origin (DCO)
    compliance.
  • New or existing tests cover these changes.
  • The documentation is up to date with these changes.

Summary by CodeRabbit

  • Documentation
    • Tightened Cassandra migration guidance around StatefulSet immutability and the recreation trigger.
    • Simplified the in-place volume adoption step to only require persistence.subPath: "data" for cassandra.
    • Updated upgrade warning links to version-specific NVIDIA documentation.
    • Added NVCF Self-Hosted 0.6.1 release notes, including OpenBao and Cassandra operational details.
  • Release Notes
    • Updated release-notes navigation and added redirects for 0.6.1 and the 0.6.0→0.6.1 upgrade guide.
    • Adjusted available versioned release-note pages in development docs.

@sbaum1994
sbaum1994 requested review from a team as code owners July 30, 2026 06:29
@coderabbitai

coderabbitai Bot commented Jul 30, 2026

Copy link
Copy Markdown

Review Change Stack

📝 Walkthrough

Walkthrough

Documentation updates clarify Cassandra StatefulSet migration, add 0.6.1 OpenBao and Cassandra release procedures, and route release-note navigation and redirects to versioned documentation.

Changes

Cassandra upgrade guidance

Layer / File(s) Summary
StatefulSet immutability and volume adoption
deploy/helm/cassandra/docs/upgrade-from-bitnami.md, docs/v0.6.1-rc/release-notes/0.6.0-to-0.6.1-upgrade.md
The docs identify removed volumeClaimTemplates.metadata.labels as the immutable difference and specify persistence.subPath: "data" as the migration-specific override.

0.6.1 release procedure

Layer / File(s) Summary
Release highlights and upgrade workflow
docs/v0.6.1-rc/release-notes/0.6.1.md
Adds Cassandra image migration details and ordered OpenBao preparation, synchronization, pod rotation, verification, and final stack installation guidance.

Versioned documentation routing

Layer / File(s) Summary
Release indexes, links, redirects, and navigation
docs/user/cluster-management/index.md, docs/user/release-notes/index.md, docs/v0.6.1-rc/release-notes/index.md, fern/docs.yml, fern/versions/*.yml
Updates upgrade-note links, adds 0.6.1 release entries, removes version-specific development navigation entries, and adds redirects to versioned pages.

Estimated code review effort: 3 (Moderate) | ~20 minutes

Possibly related PRs

  • NVIDIA/nvcf#562: Updates the same Cassandra upgrade guidance around StatefulSet immutability and volume adoption.

Suggested reviewers: along-2017, famousdirector

🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check name Status Explanation
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title follows Conventional Commits and accurately describes this documentation-only upgrade-guide update.
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch docs/fix-061-upgrade-warnings

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

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 1

🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Inline comments:
In `@deploy/helm/cassandra/docs/upgrade-from-bitnami.md`:
- Around line 63-67: Update the StatefulSet comparison text to state that only
volumeClaimTemplates.spec is shared unchanged, or explicitly qualify that all
volume claim template fields except metadata.labels match. Keep the existing
list of other shared fields and the note about removed labels.
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Enterprise

Run ID: 7ee309fe-4571-439f-88ed-680b1ff8bb8c

📥 Commits

Reviewing files that changed from the base of the PR and between 6e96474 and 1f839b3.

📒 Files selected for processing (2)
  • deploy/helm/cassandra/docs/upgrade-from-bitnami.md
  • docs/user/release-notes/0.6.0-to-0.6.1-upgrade.md

Comment thread deploy/helm/cassandra/docs/upgrade-from-bitnami.md
@github-actions

Copy link
Copy Markdown
Contributor

Signed-off-by: Stephanie Baum <sbaum@nvidia.com>
Signed-off-by: Stephanie Baum <sbaum@nvidia.com>
@sbaum1994
sbaum1994 requested a review from a team as a code owner July 30, 2026 07:23
@sbaum1994 sbaum1994 changed the title docs(cassandra): clarify StatefulSet recreation cause docs(self-managed): correct 0.6.1 upgrade documentation Jul 30, 2026
Signed-off-by: Stephanie Baum <sbaum@nvidia.com>

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 2

🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Inline comments:
In `@docs/v0.6.1-rc/release-notes/0.6.1.md`:
- Around line 298-303: Update the 0.6.1 release instructions after OpenBao
health validation so make install runs directly only for fresh installs; for
existing data-bearing clusters, require completion of the documented Cassandra
migration method before performing the full-stack sync, preserving the existing
HELMFILE_ENV usage.
- Around line 307-312: Update the final pod-health check in the release notes to
reuse the Cassandra upgrade guide’s filtered readiness command, or an equivalent
kubectl status filter, so only pods that are not Running or Completed are shown
and no output indicates success.
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Enterprise

Run ID: 0b90a692-bfda-4e16-9e45-e242705f5552

📥 Commits

Reviewing files that changed from the base of the PR and between 20b88c5 and 8b6ccd2.

📒 Files selected for processing (10)
  • docs/user/cluster-management/index.md
  • docs/user/release-notes/0.5.0-to-0.6.0-upgrade.md
  • docs/user/release-notes/0.6.0.md
  • docs/user/release-notes/index.md
  • docs/v0.6.1-rc/release-notes/0.6.0-to-0.6.1-upgrade.md
  • docs/v0.6.1-rc/release-notes/0.6.1.md
  • docs/v0.6.1-rc/release-notes/index.md
  • fern/docs.yml
  • fern/versions/dev.yml
  • fern/versions/v0.6.1-rc.yml
💤 Files with no reviewable changes (3)
  • docs/user/release-notes/0.5.0-to-0.6.0-upgrade.md
  • docs/user/release-notes/0.6.0.md
  • fern/versions/dev.yml

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Caution

Inline review comments failed to post. This is likely due to GitHub's internal server error or limits when posting large numbers of comments. If you are seeing this consistently it is likely a permissions issue. Please check "Moderation" -> "Code review limits" under your organization settings.

Actionable comments posted: 2

🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Inline comments:
In `@docs/v0.6.1-rc/release-notes/0.6.1.md`:
- Around line 298-303: Update the 0.6.1 release instructions after OpenBao
health validation so make install runs directly only for fresh installs; for
existing data-bearing clusters, require completion of the documented Cassandra
migration method before performing the full-stack sync, preserving the existing
HELMFILE_ENV usage.
- Around line 307-312: Update the final pod-health check in the release notes to
reuse the Cassandra upgrade guide’s filtered readiness command, or an equivalent
kubectl status filter, so only pods that are not Running or Completed are shown
and no output indicates success.
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Enterprise

Run ID: 0b90a692-bfda-4e16-9e45-e242705f5552

📥 Commits

Reviewing files that changed from the base of the PR and between 20b88c5 and 8b6ccd2.

📒 Files selected for processing (10)
  • docs/user/cluster-management/index.md
  • docs/user/release-notes/0.5.0-to-0.6.0-upgrade.md
  • docs/user/release-notes/0.6.0.md
  • docs/user/release-notes/index.md
  • docs/v0.6.1-rc/release-notes/0.6.0-to-0.6.1-upgrade.md
  • docs/v0.6.1-rc/release-notes/0.6.1.md
  • docs/v0.6.1-rc/release-notes/index.md
  • fern/docs.yml
  • fern/versions/dev.yml
  • fern/versions/v0.6.1-rc.yml
💤 Files with no reviewable changes (3)
  • docs/user/release-notes/0.5.0-to-0.6.0-upgrade.md
  • docs/user/release-notes/0.6.0.md
  • fern/versions/dev.yml
🛑 Comments failed to post (2)
docs/v0.6.1-rc/release-notes/0.6.1.md (2)

298-303: 🩺 Stability & Availability | 🟠 Major | 🏗️ Heavy lift

Gate the full-stack sync on Cassandra migration.

This unconditionally runs make install after OpenBao rotation. For existing data-bearing clusters, the linked Cassandra guide explicitly forbids an unscoped install until a Cassandra migration method is complete; otherwise Helm attempts the immutable StatefulSet patch and fails. Make this step conditional for fresh installs, and require existing clusters to complete Cassandra migration first.

Proposed wording
-After OpenBao is healthy on the updated OpenBao image, sync the rest of the
-0.6.1 stack:
+After OpenBao is healthy, fresh installations can sync the remaining 0.6.1
+stack. For existing data-bearing clusters, complete one of the Cassandra
+migration methods in `0.6.0-to-0.6.1-upgrade.md` first. Do not run an
+unscoped full-stack sync until Cassandra migration is complete.
📝 Committable suggestion

‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.

After OpenBao is healthy, fresh installations can sync the remaining 0.6.1
stack. For existing data-bearing clusters, complete one of the Cassandra
migration methods in `0.6.0-to-0.6.1-upgrade.md` first. Do not run an
unscoped full-stack sync until Cassandra migration is complete.

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@docs/v0.6.1-rc/release-notes/0.6.1.md` around lines 298 - 303, Update the
0.6.1 release instructions after OpenBao health validation so make install runs
directly only for fresh installs; for existing data-bearing clusters, require
completion of the documented Cassandra migration method before performing the
full-stack sync, preserving the existing HELMFILE_ENV usage.

307-312: 🎯 Functional Correctness | 🟠 Major | ⚡ Quick win

Filter the final pod-health check before claiming success.

kubectl get pods -A always prints every pod, so this command cannot produce the stated empty result. Reuse the filtered readiness check from the Cassandra upgrade guide or add an equivalent status/readiness filter.

Proposed fix
-kubectl get pods -A
+kubectl get pods -A --no-headers | awk \
+  '$4 != "Running" && $4 != "Completed" { print }
+   $4 == "Running" {
+     split($3, ready, "/")
+     if (ready[1] != ready[2]) print
+   }'
📝 Committable suggestion

‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.


🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@docs/v0.6.1-rc/release-notes/0.6.1.md` around lines 307 - 312, Update the
final pod-health check in the release notes to reuse the Cassandra upgrade
guide’s filtered readiness command, or an equivalent kubectl status filter, so
only pods that are not Running or Completed are shown and no output indicates
success.

@sbaum1994
sbaum1994 enabled auto-merge July 30, 2026 07:37
@sbaum1994
sbaum1994 added this pull request to the merge queue Jul 30, 2026
Merged via the queue into main with commit cbab2ea Jul 30, 2026
17 checks passed
@sbaum1994
sbaum1994 deleted the docs/fix-061-upgrade-warnings branch July 30, 2026 08:43
@balajinvda

Copy link
Copy Markdown
Contributor

🎉 This PR is included in version helm-nvcf-cassandra-v0.19.0 🎉

The release is available on GitHub release

Your semantic-release bot 📦🚀

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants