From: Aashish Sharma Date: Thu, 5 Mar 2026 06:33:00 +0000 (+0530) Subject: mgr/dashboard: rename expand-cluster to add-storage X-Git-Tag: v21.0.0~92^2 X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=refs%2Fpull%2F67647%2Fhead;p=ceph.git mgr/dashboard: rename expand-cluster to add-storage Signed-off-by: Aashish Sharma --- diff --git a/src/pybind/mgr/dashboard/frontend/cypress/e2e/cluster/create-cluster.po.ts b/src/pybind/mgr/dashboard/frontend/cypress/e2e/cluster/create-cluster.po.ts index 97554ce1d7e..85a983f945f 100644 --- a/src/pybind/mgr/dashboard/frontend/cypress/e2e/cluster/create-cluster.po.ts +++ b/src/pybind/mgr/dashboard/frontend/cypress/e2e/cluster/create-cluster.po.ts @@ -4,14 +4,14 @@ import { HostsPageHelper } from './hosts.po'; import { ServicesPageHelper } from './services.po'; const pages = { - index: { url: '#/expand-cluster?welcome=true', id: 'cd-create-cluster' } + index: { url: '#/add-storage?welcome=true', id: 'cd-create-cluster' } }; export class CreateClusterWizardHelper extends PageHelper { pages = pages; createCluster() { cy.get('cd-create-cluster').should('contain.text', 'Please expand your cluster first'); - cy.get('[name=expand-cluster]').click(); + cy.get('[name=add-storage]').click(); cy.get('cd-wizard').should('exist'); } @@ -22,13 +22,13 @@ export class CreateClusterWizardHelper extends PageHelper { cy.get('cd-dashboard').should('exist'); const notification = new NotificationSidebarPageHelper(); notification.open(); - notification.getNotifications().should('contain', 'Cluster expansion skipped by user'); + notification.getNotifications().should('contain', 'Storage setup skipped by user'); } } export class CreateClusterHostPageHelper extends HostsPageHelper { pages = { - index: { url: '#/expand-cluster?welcome=true', id: 'cd-wizard' }, + index: { url: '#/add-storage?welcome=true', id: 'cd-wizard' }, add: { url: '', id: 'cd-host-form' } }; @@ -42,7 +42,7 @@ export class CreateClusterHostPageHelper extends HostsPageHelper { export class CreateClusterServicePageHelper extends ServicesPageHelper { pages = { - index: { url: '#/expand-cluster?welcome=true', id: 'cd-wizard' }, + index: { url: '#/add-storage?welcome=true', id: 'cd-wizard' }, create: { url: '', id: 'cd-service-form' } }; diff --git a/src/pybind/mgr/dashboard/frontend/cypress/e2e/common/urls.po.ts b/src/pybind/mgr/dashboard/frontend/cypress/e2e/common/urls.po.ts index fc56fe7a9a1..853b1207452 100644 --- a/src/pybind/mgr/dashboard/frontend/cypress/e2e/common/urls.po.ts +++ b/src/pybind/mgr/dashboard/frontend/cypress/e2e/common/urls.po.ts @@ -3,7 +3,7 @@ import { PageHelper } from '../page-helper.po'; export class UrlsCollection extends PageHelper { pages = { // Cluster expansion - welcome: { url: '#/expand-cluster?welcome=true', id: 'cd-create-cluster' }, + welcome: { url: '#/add-storage?welcome=true', id: 'cd-create-cluster' }, // Landing page overview: { url: '#/overview', id: 'cd-dashboard' }, diff --git a/src/pybind/mgr/dashboard/frontend/cypress/e2e/orchestrator/workflow/01-create-cluster-welcome.feature b/src/pybind/mgr/dashboard/frontend/cypress/e2e/orchestrator/workflow/01-create-cluster-welcome.feature index a5809537fc6..21cb81698c5 100644 --- a/src/pybind/mgr/dashboard/frontend/cypress/e2e/orchestrator/workflow/01-create-cluster-welcome.feature +++ b/src/pybind/mgr/dashboard/frontend/cypress/e2e/orchestrator/workflow/01-create-cluster-welcome.feature @@ -8,14 +8,14 @@ Feature: Cluster expansion welcome screen Scenario: Cluster expansion welcome screen Given I am on the "welcome" page - And I should see a button to "Expand Cluster" + And I should see a button to "Add Storage" And I should see a button to "Skip" And I should see a message "Please expand your cluster first" Scenario: Go to the Cluster expansion wizard Given I am on the "welcome" page - And I should see a button to "Expand Cluster" - When I click on "Expand Cluster" button + And I should see a button to "Add Storage" + When I click on "Add Storage" button Then I am on the "Add Hosts" section Scenario: Skips the process and go to the landing page diff --git a/src/pybind/mgr/dashboard/frontend/cypress/e2e/orchestrator/workflow/02-create-cluster-add-host.feature b/src/pybind/mgr/dashboard/frontend/cypress/e2e/orchestrator/workflow/02-create-cluster-add-host.feature index ba9acdc40b0..4709f36e9c4 100644 --- a/src/pybind/mgr/dashboard/frontend/cypress/e2e/orchestrator/workflow/02-create-cluster-add-host.feature +++ b/src/pybind/mgr/dashboard/frontend/cypress/e2e/orchestrator/workflow/02-create-cluster-add-host.feature @@ -7,7 +7,7 @@ Feature: Cluster expansion host addition Background: Cluster expansion wizard Given I am logged in And I am on the "welcome" page - And I click on "Expand Cluster" button + And I click on "Add Storage" button Scenario Outline: Add hosts Given I am on the "Add Hosts" section diff --git a/src/pybind/mgr/dashboard/frontend/src/app/app-routing.module.ts b/src/pybind/mgr/dashboard/frontend/src/app/app-routing.module.ts index 9360cbdb302..aabfbe29200 100644 --- a/src/pybind/mgr/dashboard/frontend/src/app/app-routing.module.ts +++ b/src/pybind/mgr/dashboard/frontend/src/app/app-routing.module.ts @@ -130,7 +130,7 @@ const routes: Routes = [ component: NotificationsPageComponent }, { - path: 'expand-cluster', + path: 'add-storage', component: CreateClusterComponent, canActivate: [ModuleStatusGuardService], data: { @@ -138,8 +138,7 @@ const routes: Routes = [ uiApiPath: 'orchestrator', redirectTo: 'overview', backend: 'cephadm' - }, - breadcrumbs: 'Cluster/Expand Cluster' + } } }, { diff --git a/src/pybind/mgr/dashboard/frontend/src/app/ceph/cluster/create-cluster/create-cluster.component.html b/src/pybind/mgr/dashboard/frontend/src/app/ceph/cluster/create-cluster/create-cluster.component.html index f9ae6adb4a5..cc2b15ad271 100644 --- a/src/pybind/mgr/dashboard/frontend/src/app/ceph/cluster/create-cluster/create-cluster.component.html +++ b/src/pybind/mgr/dashboard/frontend/src/app/ceph/cluster/create-cluster/create-cluster.component.html @@ -1,17 +1,17 @@ +@if (startClusterCreation) {
- @if (startClusterCreation) {
+ class="cds-ml-5 cds-mt-6">
-
+
Ceph + class="ceph-logo">
-
+
Welcome to {{ projectConstants.projectName }} @@ -48,7 +48,7 @@ i18n>Set up storage for your cluster to run workloads and store data. You can configure storage and data services now, or skip and configure them later.
-
@@ -62,7 +62,7 @@
-
@@ -84,12 +84,14 @@
-
+
-
+
Disks @@ -107,10 +109,11 @@
+ [size]="icons.size20"> -
+
Data services (optional) @@ -133,7 +136,7 @@
-
+
- }
+} +@else {
+ class="form cds-mt-6">
Expand Cluster
+ i18n>Add Storage
@@ -214,13 +217,14 @@
+ @if (stepTitles[currentStep?.stepIndex]?.label === 'Create OSDs') { + }
+} - You are about to skip the cluster expansion process. - You’ll need to navigate through the menu to add hosts and services. + You are about to skip the storage setup process. + You'll need to navigate through the menu to add hosts and services. -
Are you sure you want to continue?
diff --git a/src/pybind/mgr/dashboard/frontend/src/app/ceph/cluster/create-cluster/create-cluster.component.scss b/src/pybind/mgr/dashboard/frontend/src/app/ceph/cluster/create-cluster/create-cluster.component.scss index 45e0c3bda73..3fb39ceef78 100644 --- a/src/pybind/mgr/dashboard/frontend/src/app/ceph/cluster/create-cluster/create-cluster.component.scss +++ b/src/pybind/mgr/dashboard/frontend/src/app/ceph/cluster/create-cluster/create-cluster.component.scss @@ -1,3 +1,5 @@ +@use '@carbon/layout'; + .container-fluid { align-items: flex-start; display: flex; @@ -21,11 +23,10 @@ cd-osd-form { } } -.storage-requirements-body { - border: 1px solid var(--cds-border-subtle); -} - .storage-requirements-header { - border: 1px solid var(--cds-border-subtle); border-bottom: 0; } + +.ceph-logo { + width: 7%; +} diff --git a/src/pybind/mgr/dashboard/frontend/src/app/ceph/cluster/create-cluster/create-cluster.component.spec.ts b/src/pybind/mgr/dashboard/frontend/src/app/ceph/cluster/create-cluster/create-cluster.component.spec.ts index 08711c4ff5a..e5797c827d9 100644 --- a/src/pybind/mgr/dashboard/frontend/src/app/ceph/cluster/create-cluster/create-cluster.component.spec.ts +++ b/src/pybind/mgr/dashboard/frontend/src/app/ceph/cluster/create-cluster/create-cluster.component.spec.ts @@ -126,7 +126,7 @@ describe('CreateClusterComponent', () => { component.onNextStep(); fixture.detectChanges(); submitBtnLabel = component.showSubmitButtonLabel(); - expect(submitBtnLabel).toEqual('Expand Cluster'); + expect(submitBtnLabel).toEqual('Add Storage'); cancelBtnLabel = component.showCancelButtonLabel(); expect(cancelBtnLabel).toEqual('Back'); }); diff --git a/src/pybind/mgr/dashboard/frontend/src/app/ceph/cluster/create-cluster/create-cluster.component.ts b/src/pybind/mgr/dashboard/frontend/src/app/ceph/cluster/create-cluster/create-cluster.component.ts index 19c6143fabc..c865161a3cf 100644 --- a/src/pybind/mgr/dashboard/frontend/src/app/ceph/cluster/create-cluster/create-cluster.component.ts +++ b/src/pybind/mgr/dashboard/frontend/src/app/ceph/cluster/create-cluster/create-cluster.component.ts @@ -113,7 +113,7 @@ export class CreateClusterComponent implements OnInit, OnDestroy, AfterViewInit steps.onClick = () => (this.currentStep.stepIndex = index); }); this.route.queryParams.subscribe((params) => { - // reading 'welcome' value true/false to toggle expand-cluster wizand view and welcome view + // reading 'welcome' value true/false to toggle add-storage wizand view and welcome view const showWelcomeScreen = params['welcome']; if (showWelcomeScreen) { this.startClusterCreation = showWelcomeScreen; @@ -151,7 +151,7 @@ export class CreateClusterComponent implements OnInit, OnDestroy, AfterViewInit complete: () => { this.notificationService.show( NotificationType.info, - $localize`Cluster expansion skipped by user` + $localize`Storage setup skipped by user` ); this.router.navigate(['/overview']); this.modalService.dismissAll(); @@ -275,9 +275,7 @@ export class CreateClusterComponent implements OnInit, OnDestroy, AfterViewInit } showSubmitButtonLabel() { - return !this.wizardStepsService.isLastStep() - ? this.actionLabels.NEXT - : $localize`Expand Cluster`; + return !this.wizardStepsService.isLastStep() ? this.actionLabels.NEXT : $localize`Add Storage`; } showCancelButtonLabel() { diff --git a/src/pybind/mgr/dashboard/frontend/src/app/ceph/cluster/hosts/hosts.component.ts b/src/pybind/mgr/dashboard/frontend/src/app/ceph/cluster/hosts/hosts.component.ts index 9e76f51ffd5..d6f21651e0a 100644 --- a/src/pybind/mgr/dashboard/frontend/src/app/ceph/cluster/hosts/hosts.component.ts +++ b/src/pybind/mgr/dashboard/frontend/src/app/ceph/cluster/hosts/hosts.component.ts @@ -139,11 +139,11 @@ export class HostsComponent extends ListWithDetails implements OnDestroy, OnInit ngOnInit() { this.expandClusterActions = [ { - name: this.actionLabels.EXPAND_CLUSTER, + name: this.actionLabels.ADD_STORAGE, permission: 'create', buttonKind: 'secondary', icon: Icons.expand, - routerLink: '/expand-cluster', + routerLink: '/add-storage', disable: (selection: CdTableSelection) => this.getDisable('add', selection), visible: () => this.showExpandClusterBtn } diff --git a/src/pybind/mgr/dashboard/frontend/src/app/core/auth/login/login.component.spec.ts b/src/pybind/mgr/dashboard/frontend/src/app/core/auth/login/login.component.spec.ts index 3b9e62c4829..a1c3b4ca514 100644 --- a/src/pybind/mgr/dashboard/frontend/src/app/core/auth/login/login.component.spec.ts +++ b/src/pybind/mgr/dashboard/frontend/src/app/core/auth/login/login.component.spec.ts @@ -53,7 +53,7 @@ describe('LoginComponent', () => { component.login(); expect(routerNavigateSpy).toHaveBeenCalledTimes(1); - expect(routerNavigateSpy).toHaveBeenCalledWith(['/expand-cluster'], { + expect(routerNavigateSpy).toHaveBeenCalledWith(['/add-storage'], { queryParams: { welcome: true } }); }); diff --git a/src/pybind/mgr/dashboard/frontend/src/app/core/auth/login/login.component.ts b/src/pybind/mgr/dashboard/frontend/src/app/core/auth/login/login.component.ts index 9b665f00f89..4100e57a233 100644 --- a/src/pybind/mgr/dashboard/frontend/src/app/core/auth/login/login.component.ts +++ b/src/pybind/mgr/dashboard/frontend/src/app/core/auth/login/login.component.ts @@ -67,12 +67,12 @@ export class LoginComponent implements OnInit { login() { localStorage.setItem('cluster_api_url', window.location.origin); this.authService.login(this.model).subscribe(() => { - const urlPath = this.postInstalled ? '/' : '/expand-cluster'; + const urlPath = this.postInstalled ? '/' : '/add-storage'; let url = _.get(this.route.snapshot.queryParams, 'returnUrl', urlPath); if (!this.postInstalled && this.route.snapshot.queryParams['returnUrl'] === '/overview') { - url = '/expand-cluster'; + url = '/add-storage'; } - if (url == '/expand-cluster') { + if (url === '/add-storage') { this.router.navigate([url], { queryParams: { welcome: true } }); } else { this.router.navigate([url]); diff --git a/src/pybind/mgr/dashboard/frontend/src/app/core/navigation/notification-panel/notifications-page/notifications-page.component.scss b/src/pybind/mgr/dashboard/frontend/src/app/core/navigation/notification-panel/notifications-page/notifications-page.component.scss index 2cd8e711277..33a8a08e1c2 100644 --- a/src/pybind/mgr/dashboard/frontend/src/app/core/navigation/notification-panel/notifications-page/notifications-page.component.scss +++ b/src/pybind/mgr/dashboard/frontend/src/app/core/navigation/notification-panel/notifications-page/notifications-page.component.scss @@ -78,7 +78,6 @@ // Notification details .notification-details { padding: var(--cds-spacing-05); - border: 1px solid var(--cds-border-subtle); border-radius: var(--cds-border-radius); background-color: var(--cds-layer-01); } diff --git a/src/pybind/mgr/dashboard/frontend/src/app/shared/constants/app.constants.ts b/src/pybind/mgr/dashboard/frontend/src/app/shared/constants/app.constants.ts index e7b16fb3b1f..6d63dd9e9dc 100644 --- a/src/pybind/mgr/dashboard/frontend/src/app/shared/constants/app.constants.ts +++ b/src/pybind/mgr/dashboard/frontend/src/app/shared/constants/app.constants.ts @@ -161,7 +161,7 @@ export class ActionLabelsI18n { DISCONNECT: string; RECONNECT: string; AUTHORIZE: string; - EXPAND_CLUSTER: string; + ADD_STORAGE: string; SETUP_MULTISITE_REPLICATION: string; NFS_EXPORT: string; VIEW: string; @@ -253,7 +253,7 @@ export class ActionLabelsI18n { this.CONNECT = $localize`Connect`; this.DISCONNECT = $localize`Disconnect`; this.RECONNECT = $localize`Reconnect`; - this.EXPAND_CLUSTER = $localize`Expand Cluster`; + this.ADD_STORAGE = $localize`Add Storage`; this.NFS_EXPORT = $localize`Create NFS Export`; this.VIEW = $localize`View`; diff --git a/src/pybind/mgr/dashboard/frontend/src/styles.scss b/src/pybind/mgr/dashboard/frontend/src/styles.scss index 902be1b1481..fd177f84184 100644 --- a/src/pybind/mgr/dashboard/frontend/src/styles.scss +++ b/src/pybind/mgr/dashboard/frontend/src/styles.scss @@ -219,3 +219,7 @@ input:-webkit-autofill:active { .cds--progress-bar__bar { background-color: var(--cds-primary); } + +.border-subtle { + border: 1px solid var(--cds-border-subtle); +} diff --git a/src/pybind/mgr/dashboard/frontend/src/styles/ceph-custom/_spacings.scss b/src/pybind/mgr/dashboard/frontend/src/styles/ceph-custom/_spacings.scss index 10d29cb1001..cb29ca8e494 100644 --- a/src/pybind/mgr/dashboard/frontend/src/styles/ceph-custom/_spacings.scss +++ b/src/pybind/mgr/dashboard/frontend/src/styles/ceph-custom/_spacings.scss @@ -62,6 +62,10 @@ margin-top: layout.$spacing-01; } +.cds-mt-4 { + margin-top: layout.$spacing-04; +} + .cds-mt-5 { margin-top: layout.$spacing-05; }