Claude plugin oadp cli#209
Conversation
|
[APPROVALNOTIFIER] This PR is NOT APPROVED This pull-request has been approved by: NicholasYancey The full list of commands accepted by this bot can be found here. DetailsNeeds approval from an approver in each of these files:Approvers can indicate their approval by writing |
|
Note Reviews pausedIt looks like this branch is under active development. To avoid overwhelming you with review comments due to an influx of new commits, CodeRabbit has automatically paused this review. You can configure this behavior by changing the Use the following commands to manage reviews:
Use the checkboxes below for quick actions:
📝 WalkthroughWalkthroughAdds marketplace and plugin manifests, workflow validation, and README plus skill documentation for ChangesOADP CLI plugin packaging and docs
Estimated code review effort: 2 (Simple) | ~10 minutes Suggested reviewers: 🚥 Pre-merge checks | ✅ 5✅ Passed checks (5 passed)
✨ Finishing Touches🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
There was a problem hiding this comment.
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 `@plugins/oadp-cli/README.md`:
- Around line 10-16: The markdown file-tree block in README.md is missing a
language label, causing markdownlint MD040. Update the opening fence for the
tree snippet to use a text label so the fenced code block is properly
identified; this change should be made in the README.md content that shows the
plugin structure.
In `@plugins/oadp-cli/skills/backup-restore/SKILL.md`:
- Around line 90-91: The CLI examples in SKILL.md are too broad and imply a
top-level verb-noun command that does not exist. Update the backup-restore usage
text to keep the noun-verb example for `oc oadp backup create` and narrow the
verb-noun example to the `nonadmin` command path, using the backup-restore skill
section as the place to adjust the documented command forms.
🪄 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: defaults
Review profile: CHILL
Plan: Pro
Run ID: 3d456a38-97a8-4baf-9c22-e60664852976
📒 Files selected for processing (4)
.claude-plugin/marketplace.jsonplugins/oadp-cli/.claude-plugin/plugin.jsonplugins/oadp-cli/README.mdplugins/oadp-cli/skills/backup-restore/SKILL.md
…cli, and removed unneeded info
There was a problem hiding this comment.
Actionable comments posted: 1
🧹 Nitpick comments (1)
.github/workflows/test.yml (1)
31-32: 🩺 Stability & Availability | 🔵 Trivial | ⚡ Quick winPin the Claude CLI version in CI.
npm install -g@anthropic-ai/claude-code`` makes this job nondeterministic: a new upstream release can break validation or silently change what gets validated between runs. Please install a vetted version explicitly, and preferably pair it withactions/setup-nodeso the job is not coupled to the runner image.Suggested fix
+ - name: Set up Node + uses: actions/setup-node@v4 + with: + node-version: '22' + - name: Install Claude CLI - run: npm install -g `@anthropic-ai/claude-code` + run: npm install -g `@anthropic-ai/claude-code`@<validated-version>🤖 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 @.github/workflows/test.yml around lines 31 - 32, The CI step that installs Claude CLI is unpinned and can change behavior between runs; update the workflow job using the Install Claude CLI step to install an explicit vetted `@anthropic-ai/claude-code` version instead of the floating latest, and preferably add actions/setup-node before that step so the Node environment is controlled rather than inherited from the runner image.Source: Linters/SAST tools
🤖 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 @.github/workflows/test.yml:
- Around line 29-32: Disable the persisted credentials from actions/checkout
before the Install Claude CLI step so the job token is not left in local git
config. Update the workflow around the actions/checkout and Install Claude CLI
steps to turn off credential persistence since this job only needs to read the
repo and then runs third-party npm code. Refer to the checkout step and the
Install Claude CLI step to apply the change in the same job sequence.
---
Nitpick comments:
In @.github/workflows/test.yml:
- Around line 31-32: The CI step that installs Claude CLI is unpinned and can
change behavior between runs; update the workflow job using the Install Claude
CLI step to install an explicit vetted `@anthropic-ai/claude-code` version instead
of the floating latest, and preferably add actions/setup-node before that step
so the Node environment is controlled rather than inherited from the runner
image.
🪄 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: defaults
Review profile: CHILL
Plan: Pro
Run ID: 31aacfa0-9266-484e-97f4-a249f987adf5
📒 Files selected for processing (4)
.github/workflows/test.ymlplugins/oadp-cli/.claude-plugin/plugin.jsonplugins/oadp-cli/README.mdplugins/oadp-cli/skills/backup-restore/SKILL.md
✅ Files skipped from review due to trivial changes (3)
- plugins/oadp-cli/.claude-plugin/plugin.json
- plugins/oadp-cli/skills/backup-restore/SKILL.md
- plugins/oadp-cli/README.md
shubham-pampattiwar
left a comment
There was a problem hiding this comment.
Thank you for working on this @NicholasYancey ! Overall PR looks good! I have added some comments here and there.
| oc oadp nonadmin backup get | ||
| oc oadp nonadmin backup describe <name> | ||
| oc oadp nonadmin backup logs <name> | ||
| oc oadp nonadmin restore create <name> --backup-name <backup> # upcoming |
There was a problem hiding this comment.
The non-admin section marks restore create, restore get, restore describe, and bsl get as # upcoming, but all four are implemented and registered in the current codebase. The # upcoming annotations should be removed.
Also, the non-admin cheat sheet is missing several commands that exist: nonadmin backup delete, nonadmin backup logs, nonadmin restore logs, and nonadmin restore delete. Since this plugin's purpose is to be the authoritative command reference for AI assistants, completeness matters here.
| run: go test ./... | ||
| run: go test ./... | ||
|
|
||
| validate-plugin: |
There was a problem hiding this comment.
The validate-plugin job should pin the @anthropic-ai/claude-code version and add actions/setup-node. Something like:
- uses: actions/setup-node@v4
with:
node-version: '22'
- name: Install Claude CLI
run: npm install -g @anthropic-ai/claude-code@0.2.57Pick whatever version you've validated against and bump it intentionally when needed.
| oc oadp setup --force | ||
| ``` | ||
|
|
||
| > **Note:** `oc oadp setup` and `oc oadp must-gather` require the latest dev build and are not in the current release. Verify availability with `oc oadp setup --help`. |
There was a problem hiding this comment.
This note should either be removed entirely or replaced with something version-aware, like "Available since v0.5.0" (or whatever version ships them). A static "not in the current release" statement in a living reference doc will rot quickly.
| oc oadp restore create --from-backup <name> | ||
| oc oadp restore get | ||
| oc oadp restore describe <name> | ||
| oc oadp restore logs <name> |
There was a problem hiding this comment.
The admin restore section should include:
oc oadp restore delete
to match the pattern of the backup section.
| @@ -0,0 +1,136 @@ | |||
| --- | |||
There was a problem hiding this comment.
Worth considering whether a lightweight CI check could verify SKILL.md against registered commands, or at minimum adding a note in SKILL.md or the plugin README reminding contributors to update the skill file when commands change
There was a problem hiding this comment.
🧹 Nitpick comments (1)
.github/workflows/test.yml (1)
33-35: 🩺 Stability & Availability | 🔵 Trivial | ⚡ Quick winConsider pinning to an LTS Node.js version instead of the Current release line.
Node.js 26 is on the "Current" release line and does not enter Active LTS until October 2026; CI jobs are typically more stable on an LTS line (currently Node 24) rather than a freshly-cut Current release.
♻️ Suggested fix
- uses: actions/setup-node@v4 with: - node-version: '26' + node-version: '24'🤖 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 @.github/workflows/test.yml around lines 33 - 35, The workflow is using the Current Node.js release line via actions/setup-node, which is less stable for CI than an LTS version. Update the node-version in the setup-node step to an active LTS release (for example, the current LTS line) so the test job runs against a stable supported Node version. Keep the change confined to the setup-node configuration in the test workflow.
🤖 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.
Nitpick comments:
In @.github/workflows/test.yml:
- Around line 33-35: The workflow is using the Current Node.js release line via
actions/setup-node, which is less stable for CI than an LTS version. Update the
node-version in the setup-node step to an active LTS release (for example, the
current LTS line) so the test job runs against a stable supported Node version.
Keep the change confined to the setup-node configuration in the test workflow.
ℹ️ Review info
⚙️ Run configuration
Configuration used: defaults
Review profile: CHILL
Plan: Pro
Run ID: a2ace02e-d612-49c7-b383-1f1cf3598e42
📒 Files selected for processing (2)
.github/workflows/test.ymlplugins/oadp-cli/skills/backup-restore/SKILL.md
✅ Files skipped from review due to trivial changes (1)
- plugins/oadp-cli/skills/backup-restore/SKILL.md
|
Is it reasonable to include in this pr how a customer would use the skill? Is it something like.. /plugin marketplace add anthropics/skills, select oadp-cli etc.. and BOOOM .. you gots it? |
There was a problem hiding this comment.
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 `@plugins/oadp-cli/README.md`:
- Around line 90-107: The remaining Markdown example fences in the README are
unlabeled, which keeps triggering MD040. Update the two fenced examples in the
“Use the skill” section to use a text code fence, and keep the content the same
so markdownlint recognizes both blocks; the relevant section is the one
containing /oadp-cli:backup-restore and the natural-language OADP questions.
🪄 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: defaults
Review profile: CHILL
Plan: Pro
Run ID: c717365d-a58a-47e7-b595-1500444a0516
📒 Files selected for processing (1)
plugins/oadp-cli/README.md
Why the changes were made
Adds a Claude Code plugin under plugins/oadp-cli/ so assistants recommend oc oadp / kubectl oadp for OpenShift backup and restore instead of generic oc/kubectl or manual CRD edits.
How to test the changes made
Restart Claude Code or run /reload-plugins, then:
Expect responses to point to oc oadp setup and admin or nonadmin commands.
After merge use Claude marketplace
Summary by CodeRabbit
backup-restoreskill (/oadp-cli:backup-restore).