Skip to content

Conversation

@akshat5302
Copy link
Member

@akshat5302 akshat5302 commented May 29, 2025

Description

Added configurable CPU and memory resource request options for all major service components, allowing users to customize resource allocation for web, space, admin, live, api, worker, and beatworker components through the Helm chart interface

Type of Change

  • Bug fix (non-breaking change which fixes an issue)
  • Feature (non-breaking change which adds functionality)
  • Improvement (change that would cause existing functionality to not work as expected)
  • Code refactoring
  • Performance improvements
  • Documentation update

Summary by CodeRabbit

  • New Features

    • Added configurable CPU and memory resource requests for all major components, allowing users to specify minimum resource allocations in addition to existing limits.
  • Documentation

    • Updated documentation to describe the new resource request options available for each component.
  • Chores

    • Incremented Helm chart version to 1.1.2.

- Updated `questions.yml` to include memory and CPU request variables for web, space, admin, live, api, worker, and beatworker components.
- Modified `values.yaml` to set default memory and CPU requests for each component.
- Adjusted deployment templates to utilize the new request configurations for memory and CPU.
@coderabbitai
Copy link
Contributor

coderabbitai bot commented May 29, 2025

Walkthrough

This update introduces configurable resource request parameters for CPU and memory across multiple components in the Helm chart. It modifies deployment templates to use these new values, updates the values and questions configuration files, and increments the chart version. No changes were made to logic or exported entities.

Changes

File(s) Change Summary
charts/plane-ce/Chart.yaml Bumped chart version from 1.1.1 to 1.1.2.
charts/plane-ce/questions.yml Added cpuRequest and memoryRequest variables for web, space, admin, live, api, worker, beatworker.
charts/plane-ce/values.yaml Added cpuRequest and memoryRequest fields to all main components.
charts/plane-ce/templates/workloads/{web,space,admin,live,api,worker,beat-worker}.deployment.yaml Changed resource requests from fixed values to templated, configurable values with defaults.

Sequence Diagram(s)

sequenceDiagram
    participant User
    participant Helm Chart
    participant Kubernetes

    User->>Helm Chart: Provide values for cpuRequest/memoryRequest (optional)
    Helm Chart->>Kubernetes: Render deployment manifests with resource requests
    Kubernetes->>Kubernetes: Deploy containers with specified resource requests
Loading

Possibly related PRs

Suggested reviewers

  • mguptahub

Poem

🐇
A hop, a skip, a YAML tweak,
Now resource requests are what you seek!
With values set both low and high,
Your pods won’t starve, nor will they sigh.
Helm charts fresh, the code is neat—
This change makes resource tuning sweet!
🥕


📜 Recent review details

Configuration used: .coderabbit.yaml
Review profile: CHILL
Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between fd8318b and 6bae331.

📒 Files selected for processing (2)
  • charts/plane-ce/README.md (7 hunks)
  • charts/plane-ce/templates/workloads/space.deployment.yaml (1 hunks)
✅ Files skipped from review due to trivial changes (1)
  • charts/plane-ce/README.md
🚧 Files skipped from review as they are similar to previous changes (1)
  • charts/plane-ce/templates/workloads/space.deployment.yaml

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
🪧 Tips

Chat

There are 3 ways to chat with CodeRabbit:

  • Review comments: Directly reply to a review comment made by CodeRabbit. Example:
    • I pushed a fix in commit <commit_id>, please review it.
    • Explain this complex logic.
    • Open a follow-up GitHub issue for this discussion.
  • Files and specific lines of code (under the "Files changed" tab): Tag @coderabbitai in a new review comment at the desired location with your query. Examples:
    • @coderabbitai explain this code block.
    • @coderabbitai modularize this function.
  • PR comments: Tag @coderabbitai in a new PR comment to ask questions about the PR branch. For the best results, please provide a very specific query, as very limited context is provided in this mode. Examples:
    • @coderabbitai gather interesting stats about this repository and render them as a table. Additionally, render a pie chart showing the language distribution in the codebase.
    • @coderabbitai read src/utils.ts and explain its main purpose.
    • @coderabbitai read the files in the src/scheduler package and generate a class diagram using mermaid and a README in the markdown format.
    • @coderabbitai help me debug CodeRabbit configuration file.

Support

Need help? Create a ticket on our support page for assistance with any issues or questions.

Note: Be mindful of the bot's finite context window. It's strongly recommended to break down tasks such as reading entire modules into smaller chunks. For a focused discussion, use review comments to chat about specific files and their changes, instead of using the PR comments.

CodeRabbit Commands (Invoked using PR comments)

  • @coderabbitai pause to pause the reviews on a PR.
  • @coderabbitai resume to resume the paused reviews.
  • @coderabbitai review to trigger an incremental review. This is useful when automatic reviews are disabled for the repository.
  • @coderabbitai full review to do a full review from scratch and review all the files again.
  • @coderabbitai summary to regenerate the summary of the PR.
  • @coderabbitai generate docstrings to generate docstrings for this PR.
  • @coderabbitai generate sequence diagram to generate a sequence diagram of the changes in this PR.
  • @coderabbitai resolve resolve all the CodeRabbit review comments.
  • @coderabbitai configuration to show the current CodeRabbit configuration for the repository.
  • @coderabbitai help to get help.

Other keywords and placeholders

  • Add @coderabbitai ignore anywhere in the PR description to prevent this PR from being reviewed.
  • Add @coderabbitai summary to generate the high-level summary at a specific location in the PR description.
  • Add @coderabbitai anywhere in the PR title to generate the title automatically.

Documentation and Community

  • Visit our Documentation for detailed information on how to use CodeRabbit.
  • Join our Discord Community to get help, request features, and share feedback.
  • Follow us on X/Twitter for updates and announcements.

@akshat5302 akshat5302 changed the title Plane-CE: Add resource requests for Plane CE Helm Chart [INFRA-178] Plane-CE: Add resource requests for Plane CE Helm Chart May 29, 2025
Copy link
Contributor

@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.

Actionable comments posted: 1

🧹 Nitpick comments (1)
charts/plane-ce/questions.yml (1)

297-304: New resource request options for the beatworker component & trailing space cleanup.
Added beatworker.memoryRequest and beatworker.cpuRequest with defaults (50Mi/50m). There's a trailing space on line 304; please remove it to satisfy YAML linting.
Proposed cleanup:

-  - variable: beatworker.cpuRequest
-    type: string
-    default: 50m  
+  - variable: beatworker.cpuRequest
+    type: string
+    default: 50m
🧰 Tools
🪛 YAMLlint (1.37.1)

[error] 304-304: trailing spaces

(trailing-spaces)

📜 Review details

Configuration used: .coderabbit.yaml
Review profile: CHILL
Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between 2ee447e and fd8318b.

📒 Files selected for processing (10)
  • charts/plane-ce/Chart.yaml (1 hunks)
  • charts/plane-ce/questions.yml (7 hunks)
  • charts/plane-ce/templates/workloads/admin.deployment.yaml (1 hunks)
  • charts/plane-ce/templates/workloads/api.deployment.yaml (1 hunks)
  • charts/plane-ce/templates/workloads/beat-worker.deployment.yaml (1 hunks)
  • charts/plane-ce/templates/workloads/live.deployment.yaml (1 hunks)
  • charts/plane-ce/templates/workloads/space.deployment.yaml (1 hunks)
  • charts/plane-ce/templates/workloads/web.deployment.yaml (1 hunks)
  • charts/plane-ce/templates/workloads/worker.deployment.yaml (1 hunks)
  • charts/plane-ce/values.yaml (6 hunks)
🧰 Additional context used
🪛 YAMLlint (1.37.1)
charts/plane-ce/questions.yml

[error] 304-304: trailing spaces

(trailing-spaces)

🔇 Additional comments (21)
charts/plane-ce/Chart.yaml (1)

8-8: Bump chart version to 1.1.2
Version has been incremented to reflect the addition of configurable resource requests across the chart.

charts/plane-ce/templates/workloads/beat-worker.deployment.yaml (1)

27-28: Parameterize beat-worker resource requests
Replaces hard-coded "50Mi" and "50m" with .Values.beatworker.memoryRequest and .Values.beatworker.cpuRequest, falling back to the original defaults.

charts/plane-ce/templates/workloads/api.deployment.yaml (1)

49-50: Expose API container resource requests via values
Switches fixed memory and CPU requests to .Values.api.memoryRequest and .Values.api.cpuRequest with default fallbacks, aligning with other components.

charts/plane-ce/templates/workloads/worker.deployment.yaml (1)

27-28: Parameterize worker resource requests
Introduces .Values.worker.memoryRequest and .Values.worker.cpuRequest in place of static "50Mi" and "50m", preserving existing defaults.

charts/plane-ce/values.yaml (7)

76-77: Add default resource requests for web component
Defines cpuRequest: 50m and memoryRequest: 50Mi to match the templated requests in web.deployment.yaml.


86-87: Add default resource requests for space component
Introduces cpuRequest: 50m and memoryRequest: 50Mi for the space service.


96-97: Add default resource requests for admin component
Defines cpuRequest: 50m and memoryRequest: 50Mi to enable configurable admin workloads.


106-107: Add default resource requests for live component
Adds cpuRequest: 50m and memoryRequest: 50Mi defaults for live workloads.


116-117: Add default resource requests for api component
Configures cpuRequest: 50m and memoryRequest: 50Mi to back the API deployment changes.


126-127: Add default resource requests for worker component
Defines cpuRequest: 50m and memoryRequest: 50Mi to match the templated worker resource requests.


135-136: Add default resource requests for beatworker component
Introduces cpuRequest: 50m and memoryRequest: 50Mi defaults for the beat-worker.

charts/plane-ce/templates/workloads/admin.deployment.yaml (1)

49-50: Dynamic resource requests templating applied correctly.
Resource requests for the admin container now reference .Values.admin.memoryRequest and .Values.admin.cpuRequest with sensible defaults (50Mi/50m) and proper quoting.

charts/plane-ce/templates/workloads/space.deployment.yaml (1)

49-50: Dynamic resource requests templating applied correctly.
Resource requests for the space container now reference .Values.space.memoryRequest and .Values.space.cpuRequest with defaults and quoting, enabling configurability while preserving defaults.

charts/plane-ce/templates/workloads/web.deployment.yaml (1)

49-50: Dynamic resource requests templating applied correctly.
Resource requests for the web container now reference .Values.web.memoryRequest and .Values.web.cpuRequest with defaults and quoting, improving configurability.

charts/plane-ce/templates/workloads/live.deployment.yaml (1)

49-50: Dynamic resource requests templating applied correctly.
Resource requests for the live container now reference .Values.live.memoryRequest and .Values.live.cpuRequest with fallbacks (50Mi/50m) and are quoted to ensure valid YAML.

charts/plane-ce/questions.yml (6)

58-65: New resource request options for the web component.
Added web.memoryRequest and web.cpuRequest subquestions with defaults (50Mi/50m), aligning with the templated values in the web deployment.


94-101: New resource request options for the space component.
Added space.memoryRequest and space.cpuRequest subquestions with defaults (50Mi/50m), matching the templated space deployment.


138-145: New resource request options for the admin component.
Added admin.memoryRequest and admin.cpuRequest subquestions with defaults (50Mi/50m), consistent with the admin deployment changes.


178-185: New resource request options for the live component.
Introduced live.memoryRequest and live.cpuRequest with defaults (50Mi/50m) to support live deployment templating.


231-238: New resource request options for the API component.
Added api.memoryRequest and api.cpuRequest entries with defaults (50Mi/50m), aligning with API deployment templates.


275-282: New resource request options for the worker component.
Included worker.memoryRequest and worker.cpuRequest subquestions with defaults (50Mi/50m), enabling the worker resource configuration.

@makeplane
Copy link

makeplane bot commented May 29, 2025

Pull Request Linked with Plane Work Items

Comment Automatically Generated by Plane

- Included `memoryRequest` and `cpuRequest` parameters for web, space, admin, live, api, worker, and beatworker components in the documentation.
- Updated descriptions to clarify the purpose of these new parameters in the context of Kubernetes deployments.
- Updated memory and CPU limit configurations in `space.deployment.yaml` to reference the correct `space` values instead of `web` values, ensuring accurate resource allocation for the space component.
- Changed the image reference in `space.deployment.yaml` to use `space.image` instead of `space.images`, ensuring consistency with the updated configuration structure.
@akshat5302 akshat5302 mentioned this pull request May 29, 2025
6 tasks
@mguptahub mguptahub merged commit 5648ce8 into develop May 29, 2025
3 checks passed
@mguptahub mguptahub deleted the add-resource-requests-ce branch May 29, 2025 10:32
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