Skip to content

feat(vcluster): add private nodes support for GitHub Actions PR workflows#1506

Merged
Piotr1215 merged 4 commits intomainfrom
doc-867/pullrequest-usecases
Dec 18, 2025
Merged

feat(vcluster): add private nodes support for GitHub Actions PR workflows#1506
Piotr1215 merged 4 commits intomainfrom
doc-867/pullrequest-usecases

Conversation

@Piotr1215
Copy link
Contributor

@Piotr1215 Piotr1215 commented Dec 17, 2025

Content Description

Preview Link

https://deploy-preview-1506--vcluster-docs-site.netlify.app/docs/vcluster/next/third-party-integrations/github-actions/pull-requests

Internal Reference

Closes DOC-867

@netlify /docs

Note

Adds documentation for using private nodes with auto-provisioning in GitHub Actions PR workflows.

  • Docs: New partial for private nodes workflow with vCluster template example
  • Docs: Updated pull-requests.mdx with host nodes and private nodes sections
  • CI: Enhanced Claude review workflow with duplicate detection and PR body preservation
  • Config: Simplified Vale rules docs and fixed markdownlint errors in CONTRIBUTING.md

Generated by Claude for c5751b8

@Piotr1215 Piotr1215 requested a review from a team as a code owner December 17, 2025 16:38
@github-actions
Copy link
Contributor

@netlify
Copy link

netlify bot commented Dec 17, 2025

Deploy Preview for vcluster-docs-site ready!

Name Link
🔨 Latest commit c5751b8
🔍 Latest deploy log https://app.netlify.com/projects/vcluster-docs-site/deploys/6942e0af71d1120008803a69
😎 Deploy Preview https://deploy-preview-1506--vcluster-docs-site.netlify.app/docs
📱 Preview on mobile
Toggle QR Code...

QR Code

Use your smartphone camera to open QR code link.

To edit notification comments on pull requests, go to your Netlify project configuration.

@loft-bot
Copy link
Contributor

Review for 6e18436

Files reviewed: 3 files

  • CONTRIBUTING.md (CONFIG/DOCS)
  • vcluster/_partials/integrations/github-actions-vclusters-pull-request-private-nodes.mdx (DOCS - new file)
  • vcluster/third-party-integrations/github-actions/pull-requests.mdx (DOCS)

Findings

No issues found. All files pass style and technical checks.

CONTRIBUTING.md

  • Simplified the "Controlling Vale rules" section by removing redundant content about disabling specific rules
  • Content uses present tense and active voice ✓
  • No formatting issues detected ✓

github-actions-vclusters-pull-request-private-nodes.mdx (new file)

  • Links verified:
    • ../../deploy/worker-nodes/private-nodes/README.mdx ✓ exists
    • ../../configure/vcluster-yaml/private-nodes/auto-nodes.mdx ✓ exists
    • /platform/administer/node-providers/overview ✓ exists (absolute path for cross-docs link)
  • vCluster YAML configuration validated: The privateNodes, controlPlane, and networking config block is syntactically correct and passes schema validation ✓
  • GitHub Actions workflow YAML: Valid syntax, no hardcoded secrets (uses ${{ secrets.* }} properly) ✓
  • Admonition placement: :::info block is NOT inside JSX component ✓
  • Sentence case headings: "Prerequisites", "Create a template with private nodes", "Configure GitHub Actions workflow" ✓
  • Present tense, active voice: Used throughout ✓
  • No forbidden words ("easy", "simple", "obvious") ✓
  • vCluster trademark: Correctly uses "virtual cluster" (lowercase) when referring to instances ✓
  • Import uses correct relative path with .mdx extension ✓

pull-requests.mdx

  • Heading change: "Deploying virtual clusters on pull requests" → "Deploy virtual clusters on pull requests" - uses sentence case and imperative form ✓
  • New import for private nodes partial uses correct relative path ✓
  • TenancySupport component: Updated to include privateNodes="true" - the component supports this prop ✓
  • New section structure: "Deploy with host nodes" and "Deploy with private nodes" subsections added ✓
  • Link to ../../deploy/worker-nodes/host-nodes/README.mdx ✓ exists
  • Present tense and active voice in new content ✓

Checklist verified

  • Links use relative file paths with .mdx extension (or absolute paths for cross-docs links)
  • YAML code blocks have correct indentation
  • Admonitions are not inside JSX components
  • Sentence case for headings
  • Present tense, active voice
  • No "easy", "simple", "obvious" words
  • vCluster trademark used correctly (uses "virtual cluster" not "vCluster" for instances)
  • No hardcoded secrets in CI files
  • Valid YAML syntax in code blocks
  • vCluster config validated via schema

@Piotr1215 Piotr1215 requested a review from guowenatk December 17, 2025 16:44
@loft-bot
Copy link
Contributor

Review for a552445

Files reviewed: 4 files

  • .github/workflows/claude-review.yml (CI)
  • CONTRIBUTING.md (CONFIG)
  • vcluster/_partials/integrations/github-actions-vclusters-pull-request-private-nodes.mdx (DOCS)
  • vcluster/third-party-integrations/github-actions/pull-requests.mdx (DOCS)

Findings

CI File: .github/workflows/claude-review.yml

  • Lines 93-107: Updated Step 4 instructions to preserve existing PR body content when updating summaries
  • Line 110: Added Bash(gh pr edit:*) to allowed tools list
  • ✅ No hardcoded secrets or credentials
  • ✅ Valid YAML syntax
  • ✅ Logic is correct - the new instructions properly describe the workflow for preserving existing content

CONFIG File: CONTRIBUTING.md

  • Lines 379-395: Simplified Vale rules documentation by removing the section about disabling specific rules (<!-- vale RuleName = NO --> syntax)
  • ✅ The remaining content about <!-- vale off/on --> is correct and sufficient for most use cases

DOCS File: vcluster/_partials/integrations/github-actions-vclusters-pull-request-private-nodes.mdx

  • Links verified: All relative links use correct file paths with .mdx extension:
    • ../../deploy/worker-nodes/private-nodes/README.mdx - exists
    • ../../configure/vcluster-yaml/private-nodes/auto-nodes.mdx - exists
  • vCluster YAML config validated: The privateNodes, controlPlane, and networking configuration is valid according to schema
  • Headings in sentence case: "Prerequisites", "Create a template with private nodes", "Configure GitHub Actions workflow"
  • Present tense, active voice: Used throughout (e.g., "combine private nodes", "triggers auto-nodes to provision")
  • No forbidden words: No "easy", "simple", or "obvious"
  • vCluster trademark: Used correctly, no plural "vClusters"
  • Admonition placement: :::info admonition at end is not inside JSX component
  • Line 12: Link /platform/administer/node-providers/overview uses URL path instead of relative file path - this is intentional as it links to a different documentation section (platform docs)

DOCS File: vcluster/third-party-integrations/github-actions/pull-requests.mdx

  • Import added correctly: Line 16 imports the new partial
  • TenancySupport component: Line 20 updated to include privateNodes="true" prop - verified the fragment supports this prop
  • Heading changed: Line 28 "Deploy virtual clusters on pull requests" uses sentence case
  • New subsections added: "Deploy with host nodes" and "Deploy with private nodes" properly structure the content
  • Content quality: New intro paragraph provides clear value proposition for virtual clusters in CI/CD
  • No forbidden words: No "easy", "simple", or "obvious"

Checklist verified

  • Links use relative file paths with .mdx extension (verified all internal links)
  • YAML code blocks have correct indentation (validated vCluster config)
  • Admonitions not inside JSX components (:::info is standalone)
  • Sentence case for headings
  • Present tense, active voice
  • No "easy", "simple", "obvious" words
  • vCluster trademark used correctly (no "vClusters")
  • No hardcoded secrets or credentials in CI file
  • Valid syntax in all files
  • No logic errors or bugs
  • No security issues

@Piotr1215 Piotr1215 force-pushed the doc-867/pullrequest-usecases branch from a552445 to 522fd48 Compare December 17, 2025 16:52
@loft-bot
Copy link
Contributor

Review for 522fd48

Previous review: a552445

Files reviewed: 1 file

  • .github/workflows/claude-review.yml (CI)

Findings

No new issues found. Changes since previous review are CI configuration updates only.

Changes in .github/workflows/claude-review.yml

  • Lines 46-51: Added Step 0 to check for existing reviews before reviewing
    • Instructions properly guide the reviewer to avoid duplicate findings ✓
    • Syntax is correct ✓
  • Lines 100-104: Updated Step 4 to preserve existing PR body content
    • Uses proper gh pr view and gh pr edit commands ✓
    • Instructions are clear and actionable ✓
  • Line 117: Added Bash(gh pr edit:*) to allowed tools
    • Required for the new Step 4 functionality ✓
    • Follows the same pattern as existing allowed tools ✓

All changes are valid YAML syntax and contain no hardcoded secrets or credentials.

Checklist verified

  • No hardcoded secrets or credentials
  • Valid YAML syntax
  • No logic errors or bugs
  • No security issues

@loft-bot
Copy link
Contributor

Review for c5751b8

Previous review: 522fd48

Files reviewed: 1 file

  • CONTRIBUTING.md (CONFIG)

Findings

No issues found. Changes since previous review are markdownlint fixes only.

Changes in CONTRIBUTING.md (lines 384, 391)

  • Code block language specifier: Changed unmarked code blocks from ``` to ```text
    • This satisfies markdownlint rule MD040 (fenced-code-language) ✓
  • Blank line before code block: Added blank line before "Example usage:" code block (line 390)
    • This satisfies markdownlint rule MD031 (blanks-around-fences) ✓

Both changes are valid markdownlint fixes that improve consistency.

Checklist verified

  • Valid markdown syntax
  • Content unchanged (only formatting)
  • Markdownlint rules satisfied
  • No semantic changes to documentation

@Piotr1215 Piotr1215 merged commit 9e4ccc8 into main Dec 18, 2025
18 checks passed
@Piotr1215 Piotr1215 deleted the doc-867/pullrequest-usecases branch December 18, 2025 15:02
Piotr1215 pushed a commit that referenced this pull request Dec 18, 2025
…PR workflows (#1506) (#1510)

* Backport: Copy vcluster/_partials/integrations/github-actions-vclusters-pull-request-private-nodes.mdx to vcluster_versioned_docs/version-0.30.0/_partials/integrations/github-actions-vclusters-pull-request-private-nodes.mdx

* Backport: Copy vcluster/third-party-integrations/github-actions/pull-requests.mdx to vcluster_versioned_docs/version-0.30.0/third-party-integrations/github-actions/pull-requests.mdx

---------

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants