diff --git a/ui/apps/everest/.e2e/constants.ts b/ui/apps/everest/.e2e/constants.ts index a5a1f0fdf..5fcd0d4a4 100644 --- a/ui/apps/everest/.e2e/constants.ts +++ b/ui/apps/everest/.e2e/constants.ts @@ -1,5 +1,9 @@ -const { EVEREST_BUCKETS_NAMESPACES_MAP, EVEREST_DIR, TAG_FOR_UPGRADE } = - process.env; +const { + EVEREST_BUCKETS_NAMESPACES_MAP, + EVEREST_DIR, + TAG_FOR_UPGRADE, + FB_BUILD, +} = process.env; type BucketsNamespaceMap = [string, string[]][]; @@ -17,6 +21,7 @@ export const getBucketNamespacesMap = (): BucketsNamespaceMap => export const everestdir = EVEREST_DIR; export const everestTagForUpgrade = TAG_FOR_UPGRADE; +export const everestFeatureBuildForUpgrade = FB_BUILD; const second = 1_000; const minute = 60 * second; diff --git a/ui/apps/everest/.e2e/pr/db-cluster-details/edit-db-cluster/db-version-upgrade.e2e.ts b/ui/apps/everest/.e2e/pr/db-cluster-details/edit-db-cluster/db-version-upgrade.e2e.ts index 979e882e0..3451c2290 100644 --- a/ui/apps/everest/.e2e/pr/db-cluster-details/edit-db-cluster/db-version-upgrade.e2e.ts +++ b/ui/apps/everest/.e2e/pr/db-cluster-details/edit-db-cluster/db-version-upgrade.e2e.ts @@ -6,7 +6,7 @@ import { } from '@e2e/utils/db-clusters-list'; import { getClusterDetailedInfo } from '@e2e/utils/storage-class'; import { moveForward, submitWizard } from '@e2e/utils/db-wizard'; -import { waitForStatus } from '@e2e/utils/table'; +import { waitForStatus, waitForDelete } from '@e2e/utils/table'; import { selectDbEngine } from '@e2e/pr/db-cluster/db-wizard/db-wizard-utils'; let token: string; @@ -135,11 +135,10 @@ let token: string; }); }); - // test(`Delete cluster [${db} size ${size}]`, async ({ page }) => { - // await deleteDbCluster(page, clusterName); - // await waitForStatus(page, clusterName, 'Deleting', 15000); - // await waitForDelete(page, clusterName, 240000); - // }); + test(`Delete cluster [${db} size ${size}]`, async ({ page }) => { + await deleteDbCluster(page, clusterName); + await waitForDelete(page, clusterName, 240000); + }); }); } ); diff --git a/ui/apps/everest/.e2e/pr/db-cluster/db-wizard/create-db-cluster/sharding.e2e.ts b/ui/apps/everest/.e2e/pr/db-cluster/db-wizard/create-db-cluster/sharding.e2e.ts index 195ecba92..7e549509c 100644 --- a/ui/apps/everest/.e2e/pr/db-cluster/db-wizard/create-db-cluster/sharding.e2e.ts +++ b/ui/apps/everest/.e2e/pr/db-cluster/db-wizard/create-db-cluster/sharding.e2e.ts @@ -130,7 +130,8 @@ test.describe('Sharding (psmdb)', () => { ).toBeVisible(); await deleteDbCluster(page, dbName); - await waitForDelete(page, dbName, 240000); + // TODO: Waiting for cluster deletion should be re-checked afer fix for: https://perconadev.atlassian.net/browse/EVEREST-1849 + await waitForDelete(page, dbName, 600000); }); test('Mongo with sharding should not pass multinode cluster creation if config servers = 1', async ({ diff --git a/ui/apps/everest/.e2e/upgrade/post-upgrade.e2e.ts b/ui/apps/everest/.e2e/upgrade/post-upgrade.e2e.ts index 90708cb56..c080e5443 100644 --- a/ui/apps/everest/.e2e/upgrade/post-upgrade.e2e.ts +++ b/ui/apps/everest/.e2e/upgrade/post-upgrade.e2e.ts @@ -162,7 +162,7 @@ test.describe('Post upgrade tests', { tag: '@post-upgrade' }, async () => { page, `${operator.shortName}-db-cluster`, 'Up', - TIMEOUTS.ThreeMinutes + TIMEOUTS.FiveMinutes ); }); } @@ -229,7 +229,7 @@ test.describe('Post upgrade tests', { tag: '@post-upgrade' }, async () => { 'Initializing', TIMEOUTS.ThreeMinutes ); - await waitForStatus(page, `${c.name}`, 'Up', TIMEOUTS.ThreeMinutes); + await waitForStatus(page, `${c.name}`, 'Up', TIMEOUTS.FiveMinutes); }); } diff --git a/ui/apps/everest/.e2e/upgrade/testData.ts b/ui/apps/everest/.e2e/upgrade/testData.ts index 5fd2a0593..6eb24fe20 100644 --- a/ui/apps/everest/.e2e/upgrade/testData.ts +++ b/ui/apps/everest/.e2e/upgrade/testData.ts @@ -1,4 +1,7 @@ -import { everestTagForUpgrade } from '@e2e/constants'; +import { + everestTagForUpgrade, + everestFeatureBuildForUpgrade, +} from '@e2e/constants'; export const pxcDBCluster = { name: 'pxc-db-cluster', @@ -37,7 +40,13 @@ export const postgresDBCluster = { export const expectedEverestUpgradeLog = ( tag = everestTagForUpgrade.replace(/v/g, '') ) => { - return `ℹ️ Upgrading Everest to version ${tag} + const version = + typeof everestFeatureBuildForUpgrade !== 'undefined' && + everestFeatureBuildForUpgrade + ? everestFeatureBuildForUpgrade + : tag; + + return `ℹ️ Upgrading Everest to version ${version} ✓ Upgrading Custom Resource Definitions ✓ Upgrading Helm chart @@ -45,15 +54,14 @@ export const expectedEverestUpgradeLog = ( ✓ Ensuring Everest operator deployment is ready ✓ Ensuring Everest CatalogSource is ready - 🚀 Everest has been upgraded to version ${tag} - + 🚀 Everest has been upgraded to version ${version} -To view the password for the 'admin' user, run the following command: -everestctl accounts initial-admin-password +Run the following command to get the initial admin password: + everestctl accounts initial-admin-password -IMPORTANT: This password is NOT stored in a hashed format. To secure it, update the password using the following command: +NOTE: The initial password is stored in plain text. For security, change it immediately using the following command: -everestctl accounts set-password --username admin`; + everestctl accounts set-password --username admin`; }; diff --git a/ui/apps/everest/.e2e/utils/db-cluster.ts b/ui/apps/everest/.e2e/utils/db-cluster.ts index 84991e630..10d2d5653 100644 --- a/ui/apps/everest/.e2e/utils/db-cluster.ts +++ b/ui/apps/everest/.e2e/utils/db-cluster.ts @@ -21,7 +21,6 @@ import { getTokenFromLocalStorage } from './localStorage'; import { getNamespacesFn } from './namespaces'; import { DbType } from '@percona/types'; import { checkError, getVersionServiceURL } from '@e2e/utils/generic'; -import { execSync } from 'child_process'; export const createDbClusterFn = async ( request: APIRequestContext, diff --git a/ui/apps/everest/.e2e/utils/generic.ts b/ui/apps/everest/.e2e/utils/generic.ts index f2d93501a..afa5bcfe8 100644 --- a/ui/apps/everest/.e2e/utils/generic.ts +++ b/ui/apps/everest/.e2e/utils/generic.ts @@ -15,6 +15,7 @@ import { expect } from '@playwright/test'; import { execSync } from 'child_process'; +import { everestFeatureBuildForUpgrade } from '@e2e/constants'; export const checkError = async (response) => { if (!response.ok()) { @@ -25,12 +26,19 @@ export const checkError = async (response) => { }; export const getVersionServiceURL = async () => { - try { - const command = `kubectl get deployment everest-server --namespace everest-system -o jsonpath="{.spec.template.spec.containers[0].env[?(@.name=='VERSION_SERVICE_URL')].value}"`; - const output = execSync(command).toString(); - return output; - } catch (error) { - console.error(`Error executing command: ${error}`); - throw error; + if ( + typeof everestFeatureBuildForUpgrade !== 'undefined' && + everestFeatureBuildForUpgrade + ) { + return 'http://localhost:8081'; + } else { + try { + const command = `kubectl get deployment everest-server --namespace everest-system -o jsonpath="{.spec.template.spec.containers[0].env[?(@.name=='VERSION_SERVICE_URL')].value}"`; + const output = execSync(command).toString(); + return output; + } catch (error) { + console.error(`Error executing command: ${error}`); + throw error; + } } };