Skip to content

chore: support specifying nodeport for the file-server service#282

Merged
nic-chen merged 2 commits intomainfrom
chore/file-server-nodeport
Apr 26, 2026
Merged

chore: support specifying nodeport for the file-server service#282
nic-chen merged 2 commits intomainfrom
chore/file-server-nodeport

Conversation

@nic-chen
Copy link
Copy Markdown
Contributor

@nic-chen nic-chen commented Apr 26, 2026

Summary by CodeRabbit

  • New Features

    • Added support for configurable nodePort for the file server service, available when service type is set to NodePort.
  • Chores

    • Updated Helm chart version to 0.17.53.

Copilot AI review requested due to automatic review settings April 26, 2026 12:07
@coderabbitai
Copy link
Copy Markdown

coderabbitai Bot commented Apr 26, 2026

Warning

Rate limit exceeded

@nic-chen has exceeded the limit for the number of commits that can be reviewed per hour. Please wait 28 minutes and 50 seconds before requesting another review.

Your organization is not enrolled in usage-based pricing. Contact your admin to enable usage-based pricing to continue reviews beyond the rate limit, or try again in 28 minutes and 50 seconds.

⌛ How to resolve this issue?

After the wait time has elapsed, a review can be triggered using the @coderabbitai review command as a PR comment. Alternatively, push new commits to this PR.

We recommend that you space out your commits to avoid hitting the rate limit.

🚦 How do rate limits work?

CodeRabbit enforces hourly rate limits for each developer per organization.

Our paid plans have higher rate limits than the trial, open-source and free plans. In all cases, we re-allow further reviews after a brief timeout.

Please see our FAQ for further information.

ℹ️ Review info
⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro

Run ID: 0be98ebe-685b-4246-8cc0-26a30a93e8ff

📥 Commits

Reviewing files that changed from the base of the PR and between 4327fad and c1e202e.

📒 Files selected for processing (1)
  • charts/api7/README.md
📝 Walkthrough

Walkthrough

This pull request bumps the Helm chart version from 0.17.52 to 0.17.53 and introduces support for configuring a nodePort on the file-server Service. The change includes conditional templating to set nodePort only when the service type is NodePort and a port value is provided, along with documentation and example configuration.

Changes

Cohort / File(s) Summary
Chart Version Bump
charts/api7/Chart.yaml
Updates Helm chart version metadata from 0.17.52 to 0.17.53.
File Server NodePort Support
charts/api7/templates/file-server-service.yaml, charts/api7/values.yaml, charts/api7/README.md
Adds conditional templating to set nodePort in the Service ports block when file_server_service.type is NodePort and a nodePort value is provided; includes commented example configuration and documentation of the new value parameter.

Estimated code review effort

🎯 1 (Trivial) | ⏱️ ~5 minutes

Possibly related PRs

  • api7/api7-helm-chart#263: Modifies the same chart metadata version field in Chart.yaml
  • api7/api7-helm-chart#274: Adds the file-server resources to the chart; this PR adjusts the file-server Service template and values configuration introduced in that PR

Suggested reviewers

  • jarvis9443
  • nic-6443
🚥 Pre-merge checks | ✅ 5 | ❌ 1

❌ Failed checks (1 warning)

Check name Status Explanation Resolution
E2e Test Quality Review ⚠️ Warning Helm chart PR lacks explicit E2E test coverage for the new nodePort feature; generic installation test uses default ClusterIP, never exercising the conditional templating logic. Create test value file in charts/api7/ci/file-server-nodeport.yaml setting file_server_service.type: NodePort and nodePort: 30080, with additional test scenario verifying nodePort is not set for ClusterIP or when empty/nil.
✅ Passed checks (5 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title clearly and specifically describes the main change: adding support for specifying a nodePort for the file-server service across all modified files.
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.
Security Check ✅ Passed Pull request adds nodePort configuration support to Helm chart file-server service with proper documentation and templating; no security vulnerabilities, credential leakage, or improper access control patterns detected.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch chore/file-server-nodeport

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.

❤️ Share

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

Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull request overview

This PR adds Helm chart support for optionally setting a fixed nodePort on the file-server Service when file_server_service.type is NodePort.

Changes:

  • Add conditional nodePort rendering to the file-server Service template when explicitly configured.
  • Document file_server_service.nodePort in the chart README.
  • Bump chart version from 0.17.52 to 0.17.53.

Reviewed changes

Copilot reviewed 4 out of 4 changed files in this pull request and generated 1 comment.

File Description
charts/api7/values.yaml Adds a commented example for file_server_service.nodePort.
charts/api7/templates/file-server-service.yaml Conditionally sets spec.ports[].nodePort for the file-server Service when configured.
charts/api7/README.md Documents the new file_server_service.nodePort value.
charts/api7/Chart.yaml Increments chart version to reflect template/values changes.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread charts/api7/values.yaml
Copy link
Copy Markdown

@coderabbitai coderabbitai Bot left a comment

Choose a reason for hiding this comment

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

Caution

Some comments are outside the diff and can’t be posted inline due to platform limitations.

⚠️ Outside diff range comments (1)
charts/api7/README.md (1)

3-3: ⚠️ Potential issue | 🟡 Minor

Stale version badge — regenerate README via helm-docs.

The version badge still shows 0.17.52 while Chart.yaml was bumped to 0.17.53. Run helm-docs to regenerate this header so the published documentation reflects the released chart version.

📝 Proposed fix
-![Version: 0.17.52](https://img.shields.io/badge/Version-0.17.52-informational?style=flat-square) ![Type: application](https://img.shields.io/badge/Type-application-informational?style=flat-square) ![AppVersion: 3.9.10](https://img.shields.io/badge/AppVersion-3.9.10-informational?style=flat-square)
+![Version: 0.17.53](https://img.shields.io/badge/Version-0.17.53-informational?style=flat-square) ![Type: application](https://img.shields.io/badge/Type-application-informational?style=flat-square) ![AppVersion: 3.9.10](https://img.shields.io/badge/AppVersion-3.9.10-informational?style=flat-square)
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@charts/api7/README.md` at line 3, The README header contains a stale version
badge (shows 0.17.52) that no longer matches Chart.yaml (bumped to 0.17.53);
regenerate the documentation by running helm-docs so the badge and header are
updated to the current chart version (i.e., update the README badge at the top
of charts/api7/README.md by running helm-docs to refresh the Version/AppVersion
badges).
🧹 Nitpick comments (1)
charts/api7/values.yaml (1)

217-220: Optional: align documentation style with dp_manager_service.

dp_manager_service (lines 190–195) uses explicit # -- annotations and a nodePort: null default which makes the value discoverable by helm-docs and clearly communicates the contract. Consider mirroring that style here for consistency:

♻️ Proposed refactor
 file_server_service:
   type: ClusterIP
   port: 8080
-  # nodePort: 30080
+  # -- (int) The nodePort for HTTP service, only used if file_server_service.type is NodePort. If not set, a random port will be assigned by Kubernetes.
+  nodePort: null

Note: the README already documents file_server_service.nodePort with default nil (line 244), which suggests the docs were hand-edited rather than generated from values.yaml comments. Aligning the styles would let helm-docs regenerate the table cleanly.

🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@charts/api7/values.yaml` around lines 217 - 220, The file_server_service
block should mirror dp_manager_service's documented style so helm-docs can pick
up the nodePort contract; update the file_server_service entry (the
file_server_service map and its nodePort key) to include the same explicit
comment annotations and a nodePort: null default (or commented nodePort: null
with the same "# --" separator/comment style used in dp_manager_service) so the
value becomes discoverable and consistent with README generation.
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.

Outside diff comments:
In `@charts/api7/README.md`:
- Line 3: The README header contains a stale version badge (shows 0.17.52) that
no longer matches Chart.yaml (bumped to 0.17.53); regenerate the documentation
by running helm-docs so the badge and header are updated to the current chart
version (i.e., update the README badge at the top of charts/api7/README.md by
running helm-docs to refresh the Version/AppVersion badges).

---

Nitpick comments:
In `@charts/api7/values.yaml`:
- Around line 217-220: The file_server_service block should mirror
dp_manager_service's documented style so helm-docs can pick up the nodePort
contract; update the file_server_service entry (the file_server_service map and
its nodePort key) to include the same explicit comment annotations and a
nodePort: null default (or commented nodePort: null with the same "# --"
separator/comment style used in dp_manager_service) so the value becomes
discoverable and consistent with README generation.

ℹ️ Review info
⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro

Run ID: f9b7ef81-a0a8-4998-af21-364b2dcfb55d

📥 Commits

Reviewing files that changed from the base of the PR and between 5ed149f and 4327fad.

📒 Files selected for processing (4)
  • charts/api7/Chart.yaml
  • charts/api7/README.md
  • charts/api7/templates/file-server-service.yaml
  • charts/api7/values.yaml

@nic-chen nic-chen requested a review from nic-6443 April 26, 2026 12:48
@nic-chen nic-chen merged commit ed5b7e4 into main Apr 26, 2026
3 checks passed
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.

3 participants