Skip to content

Conversation

@Guimove
Copy link
Contributor

@Guimove Guimove commented Jan 26, 2026

Add user interface for configuring IOPS and throughput on AWS EBS gp3 volumes for cluster nodepools.

Changes:

  • Add disk_iops and disk_throughput to ClusterResourcesData and KarpenterData interfaces
  • Add IOPS/throughput input fields in cluster resources settings (non-Karpenter, Karpenter stable, Karpenter GPU)
  • Update cluster creation flow to include IOPS/throughput in API requests
  • Update cluster edit flow to handle IOPS/throughput updates
  • Add default values in cluster factory mocks for testing
  • Fields are optional and only displayed for AWS clusters

The UI provides hints for valid value ranges:

  • IOPS: 3000-16000 for EBS gp3
  • Throughput: 125-1000 MB/s for EBS gp3

Summary

Issue:

Screenshots / Recordings

Testing

  • Changes tested locally in the relevant Console's pages and Storybooks
  • yarn test or yarn test -u (if you need to regenerate snapshots)
  • yarn format
  • yarn lint

PR Checklist

  • I followed naming, styling, and TypeScript rules (see .cursor/rules)
  • I performed a self-review (diff inspected, dead code removed)
  • I titled the PR using Conventional Commits with a scope when possible (e.g. feat(service): add new Terraform service) - required for semantic-release
  • I only kept necessary comments, written in English (watch for useless AI comments)
  • I involved a designer to validate UI changes if I am not a designer
  • I covered new business logic with tests (unit)
  • I confirmed CI is green (Codecov red can be accepted)
  • I reviewed and executed locally any AI-assisted code

@RemiBonnet
Copy link
Member

Qovery Preview

Qovery can create a Preview Environment for this PR.
To trigger its creation, please post a comment with one of the following command.

Command Blueprint environment
/qovery preview 28c47145-c8e7-4b9d-8d9e-c65c95b48425 staging
/qovery preview cc1de7de-94e5-40f8-8e45-bc8986d9dfec storybook
/qovery preview {all|UUID1,UUID2,...} To preview multiple environments

This comment has been generated from Qovery AI 🤖.
Below, a word from its wisdom :

Don’t Sacrifice Readability, you are going to debug it in 6 months

Add user interface for configuring IOPS and throughput on AWS EBS gp3 volumes for cluster nodepools.

Changes:
- Add disk_iops and disk_throughput to ClusterResourcesData and KarpenterData interfaces
- Add IOPS/throughput input fields in cluster resources settings (non-Karpenter, Karpenter stable, Karpenter GPU)
- Update cluster creation flow to include IOPS/throughput in API requests
- Update cluster edit flow to handle IOPS/throughput updates
- Add default values in cluster factory mocks for testing
- Fields are optional and only displayed for AWS clusters

The UI provides hints for valid value ranges:
- IOPS: 3000-16000 for EBS gp3
- Throughput: 125-1000 MB/s for EBS gp3
Update hints for disk IOPS and throughput fields to indicate they are
only available with AWS EBS gp3 storage class. This provides better
user guidance and prevents configuration errors.
Add extended interfaces to support disk_iops and disk_throughput fields
for cluster nodepools and Karpenter GPU nodes until the API client is
regenerated with the latest backend schema.

- ClusterExtended: extends Cluster with disk_iops and disk_throughput
- ClusterFeatureKarpenterParametersExtended: extends Karpenter params
- KarpenterGpuNodePoolOverrideExtended: extends GPU override with IOPS/throughput
@Guimove Guimove force-pushed the feat/add-disk-iops-throughput-nodepools branch from de356d8 to 1675a0b Compare January 26, 2026 13:24
Use ClusterKeda type from qovery-typescript-axios instead of custom
interface to maintain consistency with generated API types.
@Guimove Guimove force-pushed the feat/add-disk-iops-throughput-nodepools branch from aff8592 to ea38433 Compare January 26, 2026 13:39
@Guimove
Copy link
Contributor Author

Guimove commented Jan 26, 2026

{AC22E617-ED7F-46FC-997C-F15E6F02E668}

@codecov
Copy link

codecov bot commented Jan 26, 2026

Codecov Report

❌ Patch coverage is 31.81818% with 15 lines in your changes missing coverage. Please review.
✅ Project coverage is 47.43%. Comparing base (0f3e58b) to head (ea38433).
⚠️ Report is 1 commits behind head on staging.

Files with missing lines Patch % Lines
...-resources-settings/cluster-resources-settings.tsx 35.29% 10 Missing and 1 partial ⚠️
...ources-feature/page-settings-resources-feature.tsx 33.33% 0 Missing and 2 partials ⚠️
...ture/step-summary-feature/step-summary-feature.tsx 0.00% 0 Missing and 2 partials ⚠️
Additional details and impacted files
@@             Coverage Diff             @@
##           staging    #2330      +/-   ##
===========================================
- Coverage    47.74%   47.43%   -0.31%     
===========================================
  Files         1254     1242      -12     
  Lines        22720    22783      +63     
  Branches      6637     6698      +61     
===========================================
- Hits         10847    10808      -39     
- Misses        9808     9894      +86     
- Partials      2065     2081      +16     
Flag Coverage Δ
unittests 47.43% <31.81%> (-0.31%) ⬇️

Flags with carried forward coverage won't be shown. Click here to find out more.

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

@Guimove Guimove changed the title wip: feat: add UI for disk IOPS and throughput configuration on AWS nodepools feat: add UI for disk IOPS and throughput configuration on AWS nodepools Jan 26, 2026
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