feat: Service Catalog feedback and improvements#2824
Conversation
|
View your CI Pipeline Execution ↗ for commit b07329f
💡 Verify your cache is correct by running tasks in a sandbox. Read docs ↗ ☁️ Nx Cloud last updated this comment at |
84b2f5c to
23a6b4d
Compare
There was a problem hiding this comment.
Pull request overview
This PR iterates on the Service Catalog and Blueprint-related UX by refreshing the “create service” experience, improving blueprint update discoverability/flows (badge, modal, titles), and adding supporting utilities/validation and API/mutation wiring.
Changes:
- Refactors the Service Catalog “new service” page to emphasize “Base services” + blueprint catalog (with compatibility filtering and blueprint-name formatting).
- Enhances blueprint update flows (new update badge + confirmation modal, improved title formatting, and auto-deploy after saving an update).
- Adds blueprint utilities (name formatting + compatibility) and numeric validation for blueprint manifest fields, along with test coverage and a dependency bump.
Reviewed changes
Copilot reviewed 37 out of 38 changed files in this pull request and generated 7 comments.
Show a summary per file
| File | Description |
|---|---|
| yarn.lock | Bumps lockfile entry for qovery-typescript-axios. |
| package.json | Updates qovery-typescript-axios to 1.1.934. |
| libs/shared/ui/src/lib/components/funnel-flow-body/funnel-flow-body.tsx | Minor className formatting cleanup. |
| libs/domains/services/feature/src/lib/service-update-flow/blueprint/blueprint-update-utils.ts | Adds helpers for service version extraction and update title formatting. |
| libs/domains/services/feature/src/lib/service-update-flow/blueprint/blueprint-update-utils.spec.ts | Adds tests for new blueprint tag/title helpers and updates fixtures. |
| libs/domains/services/feature/src/lib/service-update-flow/blueprint/blueprint-update-review-step.tsx | Updates layout sizing and footer styling for the review step. |
| libs/domains/services/feature/src/lib/service-update-flow/blueprint/blueprint-update-preview-step.tsx | Updates preview layout sizing and footer styling; adjusts raw output height. |
| libs/domains/services/feature/src/lib/service-update-flow/blueprint/blueprint-update-no-input-confirmation-modal.tsx | Introduces a modal for “no input required” blueprint updates. |
| libs/domains/services/feature/src/lib/service-update-flow/blueprint/blueprint-update-flow.tsx | Uses new title helper and deploys after updating via a new deploy hook. |
| libs/domains/services/feature/src/lib/service-update-flow/blueprint/blueprint-update-flow.spec.tsx | Adds test ensuring deploy happens after update before exiting. |
| libs/domains/services/feature/src/lib/service-update-flow/blueprint/blueprint-update-badge.tsx | Adds reusable badge component to access the blueprint update flow/modal. |
| libs/domains/services/feature/src/lib/service-overview/service-header/service-header.tsx | Refactors blueprint metadata display and uses the new update badge component. |
| libs/domains/services/feature/src/lib/service-overview/service-header/service-header.spec.tsx | Updates assertions for new blueprint metadata/badge behavior. |
| libs/domains/services/feature/src/lib/service-new/service-new.tsx | Overhauls Service Catalog page structure; filters blueprints by cluster/provider. |
| libs/domains/services/feature/src/lib/service-new/service-new.spec.tsx | Updates/extends tests for new Service Catalog UI behavior. |
| libs/domains/services/feature/src/lib/service-new/service-card/service-card.tsx | Adds BaseServiceCard and tooltip affordances for base services. |
| libs/domains/services/feature/src/lib/service-new/blueprint-card/blueprint-card.tsx | Formats blueprint names before rendering. |
| libs/domains/services/feature/src/lib/service-list/service-list.tsx | Simplifies ServiceVersionCell usage (drops explicit org/project props). |
| libs/domains/services/feature/src/lib/service-list/service-list-cells/service-version-cell.tsx | Adds blueprint-aware rendering, update badge integration, and loading skeleton. |
| libs/domains/services/feature/src/lib/service-list/service-list-cells/service-version-cell.spec.tsx | Adds tests for blueprint service version cell behavior and modal opening. |
| libs/domains/services/feature/src/lib/service-creation-flow/blueprint/blueprint-step-summary/blueprint-step-summary.tsx | Updates layout width and formats blueprint name in the summary. |
| libs/domains/services/feature/src/lib/service-creation-flow/blueprint/blueprint-creation-flow.tsx | Uses formatted blueprint name as the default service name. |
| libs/domains/services/feature/src/lib/service-creation-flow/blueprint/blueprint-creation-flow.spec.tsx | Aligns tests with new labels/buttons (“Configure”, “Version”). |
| libs/domains/services/feature/src/lib/service-creation-flow/blueprint/blueprint-configuration-view/blueprint-creation-components/overrides-section-card/overrides-section-card.tsx | Adds a “Configure” action button to overrides card header. |
| libs/domains/services/feature/src/lib/service-creation-flow/blueprint/blueprint-configuration-view/blueprint-creation-components/blueprint-section/blueprint-section.tsx | Adds header action support and more flexible header styling. |
| libs/domains/services/feature/src/lib/service-creation-flow/blueprint/blueprint-configuration-view/blueprint-configuration-view.tsx | Updates layout width, blueprint name formatting, and label text (“Version”). |
| libs/domains/services/feature/src/lib/hooks/use-deploy-blueprint/use-deploy-blueprint.ts | Adds a deploy mutation hook with React Query invalidations. |
| libs/domains/services/feature/src/lib/blueprint-utils/blueprint-utils.ts | Adds blueprint-name formatting + compatibility filtering helpers. |
| libs/domains/services/feature/src/lib/blueprint-utils/blueprint-utils.spec.ts | Adds test coverage for blueprint utilities. |
| libs/domains/services/feature/src/lib/blueprint-field-utils/blueprint-field-utils.ts | Adds numeric min/max validation and integrates it into validation flow. |
| libs/domains/services/feature/src/lib/blueprint-field-utils/blueprint-field-utils.spec.ts | Adds tests for numeric validation + validation integration. |
| libs/domains/services/feature/src/lib/blueprint-details-panel/blueprint-details-panel.tsx | Improves blueprint docs display (heading components, table borders, title stripping). |
| libs/domains/services/feature/src/lib/blueprint-details-panel/blueprint-details-panel.spec.tsx | Updates expectations for formatted blueprint naming/title handling. |
| libs/domains/services/data-access/src/lib/domains-services-data-access.ts | Adds deployBlueprint mutation wiring to blueprint API. |
| libs/domains/service-settings/feature/src/lib/service-general-settings/terraform-general-settings/terraform-general-settings.tsx | Hides source edit action for blueprint-based terraform services. |
| libs/domains/service-settings/feature/src/lib/service-general-settings/terraform-general-settings/terraform-general-settings.spec.tsx | Adds test ensuring edit action is hidden for blueprint services. |
| libs/domains/organizations/feature/src/lib/git-repository-service-settings/edit-git-repository-settings/edit-git-repository-settings.tsx | Adds showEditAction prop to optionally disable edit actions. |
| apps/console/src/routes/_authenticated/organization/$organizationId/project/$projectId/environment/$environmentId/service/new.tsx | Updates route layout and wraps ServiceNew in a constrained container with header. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
RemiBonnet
left a comment
There was a problem hiding this comment.
Thanks @rmnbrd I added few comments!
Codecov Report❌ Patch coverage is Additional details and impacted files@@ Coverage Diff @@
## staging #2824 +/- ##
==========================================
Coverage ? 47.30%
==========================================
Files ? 1269
Lines ? 27213
Branches ? 7943
==========================================
Hits ? 12872
Misses ? 12154
Partials ? 2187
Flags with carried forward coverage won't be shown. Click here to find out more. ☔ View full report in Codecov by Harness. 🚀 New features to boost your workflow:
|
|
🎉 This PR is included in version 1.330.0 🎉 The release is available on GitHub release Your semantic-release bot 📦🚀 |
feat: Service Catalog feedback and improvements
As the name suggests, this PR introduces UI and UX changes for the Service Catalog feature.
The exhaustive feedback list can be found here.
Testing
yarn testoryarn test -u(if you need to regenerate snapshots)yarn formatyarn lintPR Checklist
.cursor/rules)feat(service): add new Terraform service) - required for semantic-release