@red-hat-developer-hub/e2e-test-utils 2.1.16 → 2.1.18

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,5 +1,10 @@
1
1
  includes:
2
2
  - dynamic-plugins.default.yaml
3
+ # TODO: switch these plugins to their quay.io {{inherit}} references once published.
3
4
  plugins:
5
+ - package: oci://ghcr.io/redhat-developer/rhdh-plugin-export-overlays/red-hat-developer-hub-backstage-plugin-app-auth:bs_1.54.6__1.1.0
6
+ disabled: false
7
+ - package: oci://ghcr.io/redhat-developer/rhdh-plugin-export-overlays/red-hat-developer-hub-backstage-plugin-app-integrations:bs_1.54.6__1.1.0
8
+ disabled: false
4
9
  - package: oci://quay.io/rhdh/red-hat-developer-hub-backstage-plugin-quickstart:{{inherit}}
5
10
  disabled: true
@@ -4,11 +4,6 @@ export declare const DEFAULT_CONFIG_PATHS: {
4
4
  appConfig: string;
5
5
  secrets: string;
6
6
  dynamicPlugins: string;
7
- /** New frontend system (app-next): paths merged when the deployment uses NFS layers (explicit flag, `-app-next` namespace, or `USE_NEW_FRONTEND_SYSTEM`). */
8
- newFrontendSystem: {
9
- dynamicPlugins: string;
10
- valueFile: string;
11
- };
12
7
  helm: {
13
8
  valueFile: string;
14
9
  };
@@ -1 +1 @@
1
- {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../../src/deployment/rhdh/constants.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAC/C,OAAO,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAK1D,eAAO,MAAM,oBAAoB;;;;IAa/B,6JAA6J;;;;;;;;;;;CAuB9J,CAAC;AAEF,eAAO,MAAM,iBAAiB,EAAE,MAAM,CACpC,YAAY,EACZ;IACE,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,cAAc,EAAE,MAAM,CAAC;IACvB,aAAa,CAAC,EAAE,YAAY,CAAC;CAC9B,CA0CF,CAAC;AAEF,eAAO,MAAM,SAAS,6BAA6B,CAAC"}
1
+ {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../../src/deployment/rhdh/constants.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAC/C,OAAO,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAK1D,eAAO,MAAM,oBAAoB;;;;;;;;;;CAyBhC,CAAC;AAEF,eAAO,MAAM,iBAAiB,EAAE,MAAM,CACpC,YAAY,EACZ;IACE,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,cAAc,EAAE,MAAM,CAAC;IACvB,aAAa,CAAC,EAAE,YAAY,CAAC;CAC9B,CA0CF,CAAC;AAEF,eAAO,MAAM,SAAS,6BAA6B,CAAC"}
@@ -5,11 +5,6 @@ export const DEFAULT_CONFIG_PATHS = {
5
5
  appConfig: path.join(PACKAGE_ROOT, "dist/deployment/rhdh/config/common/app-config-rhdh.yaml"),
6
6
  secrets: path.join(PACKAGE_ROOT, "dist/deployment/rhdh/config/common/rhdh-secrets.yaml"),
7
7
  dynamicPlugins: path.join(PACKAGE_ROOT, "dist/deployment/rhdh/config/common/dynamic-plugins.yaml"),
8
- /** New frontend system (app-next): paths merged when the deployment uses NFS layers (explicit flag, `-app-next` namespace, or `USE_NEW_FRONTEND_SYSTEM`). */
9
- newFrontendSystem: {
10
- dynamicPlugins: path.join(PACKAGE_ROOT, "dist/deployment/rhdh/config/new-frontend-system/dynamic-plugins.yaml"),
11
- valueFile: path.join(PACKAGE_ROOT, "dist/deployment/rhdh/config/new-frontend-system/value_file.yaml"),
12
- },
13
8
  helm: {
14
9
  valueFile: path.join(PACKAGE_ROOT, "dist/deployment/rhdh/config/helm/value_file.yaml"),
15
10
  },
@@ -13,8 +13,8 @@ export declare class RHDHDeployment {
13
13
  /** Shared merge strategy for dynamic plugin arrays. */
14
14
  private static readonly pluginMergeOpts;
15
15
  /**
16
- * Merges package defaults + auth + optional new-frontend-system defaults +
17
- * optional user config into a single dynamic plugins configuration.
16
+ * Merges package defaults, auth, and optional user config into a single
17
+ * dynamic plugins configuration.
18
18
  */
19
19
  private _mergeBaseConfigs;
20
20
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"deployment.d.ts","sourceRoot":"","sources":["../../../src/deployment/rhdh/deployment.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,sBAAsB,EAAE,MAAM,kCAAkC,CAAC;AAwB1E,OAAO,KAAK,EACV,iBAAiB,EACjB,gBAAgB,EAGjB,MAAM,YAAY,CAAC;AAEpB,qBAAa,cAAc;IAClB,SAAS,yBAAgC;IACzC,OAAO,EAAE,MAAM,CAAC;IAChB,gBAAgB,EAAE,gBAAgB,CAAC;gBAE9B,SAAS,EAAE,MAAM;IAKvB,MAAM,CAAC,OAAO,CAAC,EAAE;QAAE,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;KAAE,GAAG,OAAO,CAAC,IAAI,CAAC;YA0CpD,eAAe;YAmBf,aAAa;IAwB3B,uDAAuD;IACvD,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,eAAe,CAE5B;IAEX;;;OAGG;YACW,iBAAiB;IAe/B;;OAEG;YACW,uBAAuB;IAgBrC;;;;;;;;OAQG;YACW,0BAA0B;YAsC1B,oBAAoB;YAWpB,eAAe;YAuEf,mBAAmB;IAmCjC,OAAO,KAAK,cAAc,GAIzB;IAEK,cAAc,IAAI,OAAO,CAAC,IAAI,CAAC;IAWrC;;;;OAIG;IACG,mBAAmB,IAAI,OAAO,CAAC,IAAI,CAAC;IAOpC,cAAc,CAAC,OAAO,GAAE,MAAY,GAAG,OAAO,CAAC,IAAI,CAAC;IA6BpD,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC;YAIjB,iBAAiB;YASjB,oBAAoB;IAsClC;;;OAGG;YACW,0BAA0B;IAwCxC,OAAO,CAAC,sBAAsB;IA2CxB,SAAS,CAAC,iBAAiB,CAAC,EAAE,iBAAiB,GAAG,OAAO,CAAC,IAAI,CAAC;IAUrE,OAAO,CAAC,aAAa;IAUrB,OAAO,CAAC,IAAI;IAIZ,OAAO,CAAC,SAAS;CAMlB"}
1
+ {"version":3,"file":"deployment.d.ts","sourceRoot":"","sources":["../../../src/deployment/rhdh/deployment.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,sBAAsB,EAAE,MAAM,kCAAkC,CAAC;AAyB1E,OAAO,KAAK,EACV,iBAAiB,EACjB,gBAAgB,EAGjB,MAAM,YAAY,CAAC;AAEpB,qBAAa,cAAc;IAClB,SAAS,yBAAgC;IACzC,OAAO,EAAE,MAAM,CAAC;IAChB,gBAAgB,EAAE,gBAAgB,CAAC;gBAE9B,SAAS,EAAE,MAAM;IAKvB,MAAM,CAAC,OAAO,CAAC,EAAE;QAAE,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;KAAE,GAAG,OAAO,CAAC,IAAI,CAAC;YA0CpD,eAAe;YAmBf,aAAa;IAwB3B,uDAAuD;IACvD,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,eAAe,CAM5B;IAEX;;;OAGG;YACW,iBAAiB;IAY/B;;OAEG;YACW,uBAAuB;IAgBrC;;;;;;;;OAQG;YACW,0BAA0B;YAoC1B,oBAAoB;YAWpB,eAAe;YA6Df,mBAAmB;IAmCjC,OAAO,KAAK,cAAc,GAIzB;IAEK,cAAc,IAAI,OAAO,CAAC,IAAI,CAAC;IAWrC;;;;OAIG;IACG,mBAAmB,IAAI,OAAO,CAAC,IAAI,CAAC;IAOpC,cAAc,CAAC,OAAO,GAAE,MAAY,GAAG,OAAO,CAAC,IAAI,CAAC;IA6BpD,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC;YAIjB,iBAAiB;YASjB,oBAAoB;IAsClC;;;OAGG;YACW,0BAA0B;IAwCxC,OAAO,CAAC,sBAAsB;IAsCxB,SAAS,CAAC,iBAAiB,CAAC,EAAE,iBAAiB,GAAG,OAAO,CAAC,IAAI,CAAC;IAUrE,OAAO,CAAC,aAAa;IAUrB,OAAO,CAAC,IAAI;IAIZ,OAAO,CAAC,SAAS;CAMlB"}
@@ -6,7 +6,7 @@ import os from "os";
6
6
  import path from "path";
7
7
  import { test, request, expect } from "@playwright/test";
8
8
  import { mergeYamlFilesIfExists, deepMerge } from "../../utils/merge-yamls.js";
9
- import { generatePluginsFromMetadata, processPluginsForDeployment, getNormalizedPluginMergeKey, disablePlugins, } from "../../utils/plugin-metadata.js";
9
+ import { generatePluginsFromMetadata, processPluginsForDeployment, getNormalizedPluginMergeKey, disablePlugins, applyDisabledPlugins, } from "../../utils/plugin-metadata.js";
10
10
  import { envsubst } from "../../utils/common.js";
11
11
  import { runOnce } from "../../playwright/run-once.js";
12
12
  import cloneDeepWith from "lodash.clonedeepwith";
@@ -79,20 +79,20 @@ export class RHDHDeployment {
79
79
  }
80
80
  /** Shared merge strategy for dynamic plugin arrays. */
81
81
  static pluginMergeOpts = {
82
- arrayMergeStrategy: { byKey: "package" },
82
+ arrayMergeStrategy: {
83
+ byKey: "package",
84
+ normalizeKey: (item) => getNormalizedPluginMergeKey(item),
85
+ },
83
86
  };
84
87
  /**
85
- * Merges package defaults + auth + optional new-frontend-system defaults +
86
- * optional user config into a single dynamic plugins configuration.
88
+ * Merges package defaults, auth, and optional user config into a single
89
+ * dynamic plugins configuration.
87
90
  */
88
91
  async _mergeBaseConfigs(userConfigPath) {
89
92
  const authConfig = AUTH_CONFIG_PATHS[this.deploymentConfig.auth];
90
93
  const paths = [
91
94
  DEFAULT_CONFIG_PATHS.dynamicPlugins,
92
95
  authConfig.dynamicPlugins,
93
- ...(this.deploymentConfig.useNewFrontendSystem
94
- ? [DEFAULT_CONFIG_PATHS.newFrontendSystem.dynamicPlugins]
95
- : []),
96
96
  ...(userConfigPath ? [userConfigPath] : []),
97
97
  ];
98
98
  return await mergeYamlFilesIfExists(paths, RHDHDeployment.pluginMergeOpts);
@@ -139,9 +139,7 @@ export class RHDHDeployment {
139
139
  let result = await processPluginsForDeployment(config, WorkspacePaths.metadataDir);
140
140
  // Disable default plugins (PR builds only) — covers wrapper + OCI DPDY forms
141
141
  if (process.env.GIT_PR_NUMBER) {
142
- result = deepMerge(result, disabledPlugins, {
143
- arrayMergeStrategy: "concat",
144
- });
142
+ result = applyDisabledPlugins(result, disabledPlugins);
145
143
  }
146
144
  return result;
147
145
  }
@@ -153,17 +151,7 @@ export class RHDHDeployment {
153
151
  async _deployWithHelm(valueFile) {
154
152
  const chartVersion = await this._resolveChartVersion(this.deploymentConfig.version);
155
153
  this._log(`Helm chart version resolved to: ${chartVersion}`);
156
- const helmValuePaths = [
157
- DEFAULT_CONFIG_PATHS.helm.valueFile,
158
- ...(this.deploymentConfig.useNewFrontendSystem
159
- ? [DEFAULT_CONFIG_PATHS.newFrontendSystem.valueFile]
160
- : []),
161
- valueFile,
162
- ...(this.deploymentConfig.useNewFrontendSystem &&
163
- fs.existsSync(WorkspacePaths.valueFileAppNext)
164
- ? [WorkspacePaths.valueFileAppNext]
165
- : []),
166
- ];
154
+ const helmValuePaths = [DEFAULT_CONFIG_PATHS.helm.valueFile, valueFile];
167
155
  const valueFileObject = (await mergeYamlFilesIfExists(helmValuePaths));
168
156
  this._logBoxen("Value File", valueFileObject);
169
157
  // Merge dynamic plugins into the values file (including auth-specific plugins)
@@ -348,9 +336,6 @@ export class RHDHDeployment {
348
336
  process.env.INSTALLATION_METHOD ??
349
337
  "helm";
350
338
  const namespace = input.namespace ?? this.deploymentConfig.namespace;
351
- const useNewFrontendSystem = input.useNewFrontendSystem ??
352
- (namespace.endsWith("-app-next") ||
353
- process.env.USE_NEW_FRONTEND_SYSTEM === "true");
354
339
  const base = {
355
340
  version,
356
341
  namespace,
@@ -359,7 +344,6 @@ export class RHDHDeployment {
359
344
  secrets: input.secrets ?? WorkspacePaths.secrets,
360
345
  dynamicPlugins: input.dynamicPlugins ?? WorkspacePaths.dynamicPlugins,
361
346
  disablePlugins: input.disablePlugins ?? [],
362
- useNewFrontendSystem,
363
347
  };
364
348
  if (method === "helm") {
365
349
  return {
@@ -38,11 +38,11 @@ describe("dynamic-plugins merge (no user config path)", () => {
38
38
  assert.strictEqual(plugins.length, 1, "merged config must have exactly one keycloak plugin");
39
39
  assert.ok(plugins[0].package?.startsWith("oci://"), "metadata (OCI) must win over auth local path");
40
40
  });
41
- it("keeps user app-auth OCI ref over NFS defaults for same logical plugin", () => {
42
- const nfsDefaults = {
41
+ it("keeps user app-auth OCI ref over package defaults for the same logical plugin", () => {
42
+ const packageDefaults = {
43
43
  plugins: [
44
44
  {
45
- package: "oci://ghcr.io/redhat-developer/rhdh-plugin-export-overlays/red-hat-developer-hub-backstage-plugin-app-auth:bs_1.49.4__0.0.1",
45
+ package: "oci://ghcr.io/redhat-developer/rhdh-plugin-export-overlays/red-hat-developer-hub-backstage-plugin-app-auth:bs_1.54.6__1.1.0",
46
46
  disabled: false,
47
47
  },
48
48
  ],
@@ -55,7 +55,7 @@ describe("dynamic-plugins merge (no user config path)", () => {
55
55
  },
56
56
  ],
57
57
  };
58
- const merged = deepMerge(nfsDefaults, userPlugins, {
58
+ const merged = deepMerge(packageDefaults, userPlugins, {
59
59
  arrayMergeStrategy: {
60
60
  byKey: "package",
61
61
  normalizeKey: (item) => getNormalizedPluginMergeKey(item),
@@ -63,22 +63,22 @@ describe("dynamic-plugins merge (no user config path)", () => {
63
63
  });
64
64
  const plugins = merged.plugins;
65
65
  assert.strictEqual(plugins.length, 1);
66
- assert.ok(plugins[0].package?.includes("older__0.0.1"), "user layer must win over NFS defaults for the same logical plugin");
66
+ assert.ok(plugins[0].package?.includes("older__0.0.1"), "user layer must win over package defaults for the same logical plugin");
67
67
  });
68
- it("does not duplicate includes when NFS layer omits includes", () => {
68
+ it("does not duplicate includes when a package layer omits includes", () => {
69
69
  const common = {
70
70
  includes: ["dynamic-plugins.default.yaml"],
71
71
  plugins: [],
72
72
  };
73
- const nfsLayer = {
73
+ const packageLayer = {
74
74
  plugins: [
75
75
  {
76
- package: "oci://ghcr.io/redhat-developer/rhdh-plugin-export-overlays/red-hat-developer-hub-backstage-plugin-app-auth:bs_1.49.4__0.0.1",
76
+ package: "oci://ghcr.io/redhat-developer/rhdh-plugin-export-overlays/red-hat-developer-hub-backstage-plugin-app-auth:bs_1.54.6__1.1.0",
77
77
  disabled: false,
78
78
  },
79
79
  ],
80
80
  };
81
- const merged = deepMerge(common, nfsLayer, {
81
+ const merged = deepMerge(common, packageLayer, {
82
82
  arrayMergeStrategy: {
83
83
  byKey: "package",
84
84
  normalizeKey: (item) => getNormalizedPluginMergeKey(item),
@@ -15,8 +15,6 @@ export type DeploymentOptions = {
15
15
  * `{{inherit}}`). Accepts display names, local paths, or OCI refs.
16
16
  */
17
17
  disablePlugins?: string[];
18
- /** When true, merge new-frontend-system (app-next) layers. When omitted, auto-detect: namespace ends with `-app-next` or `USE_NEW_FRONTEND_SYSTEM=true`. Pass false to disable. */
19
- useNewFrontendSystem?: boolean;
20
18
  };
21
19
  export type HelmDeploymentConfig = {
22
20
  method: "helm";
@@ -34,8 +32,6 @@ export type DeploymentConfigBase = {
34
32
  secrets: string;
35
33
  dynamicPlugins: string;
36
34
  disablePlugins: string[];
37
- /** New frontend system (Backstage app-next / NFS shell). */
38
- useNewFrontendSystem: boolean;
39
35
  };
40
36
  export type DeploymentConfig = DeploymentConfigBase & (HelmDeploymentConfig | OperatorDeploymentConfig);
41
37
  //# sourceMappingURL=types.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/deployment/rhdh/types.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,gBAAgB,GAAG,MAAM,GAAG,UAAU,CAAC;AACnD,MAAM,MAAM,YAAY,GAAG,OAAO,GAAG,UAAU,GAAG,QAAQ,CAAC;AAE3D,MAAM,MAAM,iBAAiB,GAAG;IAC9B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,IAAI,CAAC,EAAE,YAAY,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,MAAM,CAAC,EAAE,gBAAgB,CAAC;IAC1B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB;;;OAGG;IACH,cAAc,CAAC,EAAE,MAAM,EAAE,CAAC;IAC1B,mLAAmL;IACnL,oBAAoB,CAAC,EAAE,OAAO,CAAC;CAChC,CAAC;AAEF,MAAM,MAAM,oBAAoB,GAAG;IACjC,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,CAAC;CACnB,CAAC;AAEF,MAAM,MAAM,wBAAwB,GAAG;IACrC,MAAM,EAAE,UAAU,CAAC;IACnB,YAAY,EAAE,MAAM,CAAC;CACtB,CAAC;AAEF,MAAM,MAAM,oBAAoB,GAAG;IACjC,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,IAAI,EAAE,YAAY,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,cAAc,EAAE,MAAM,CAAC;IACvB,cAAc,EAAE,MAAM,EAAE,CAAC;IACzB,4DAA4D;IAC5D,oBAAoB,EAAE,OAAO,CAAC;CAC/B,CAAC;AAEF,MAAM,MAAM,gBAAgB,GAAG,oBAAoB,GACjD,CAAC,oBAAoB,GAAG,wBAAwB,CAAC,CAAC"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/deployment/rhdh/types.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,gBAAgB,GAAG,MAAM,GAAG,UAAU,CAAC;AACnD,MAAM,MAAM,YAAY,GAAG,OAAO,GAAG,UAAU,GAAG,QAAQ,CAAC;AAE3D,MAAM,MAAM,iBAAiB,GAAG;IAC9B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,IAAI,CAAC,EAAE,YAAY,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,MAAM,CAAC,EAAE,gBAAgB,CAAC;IAC1B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB;;;OAGG;IACH,cAAc,CAAC,EAAE,MAAM,EAAE,CAAC;CAC3B,CAAC;AAEF,MAAM,MAAM,oBAAoB,GAAG;IACjC,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,CAAC;CACnB,CAAC;AAEF,MAAM,MAAM,wBAAwB,GAAG;IACrC,MAAM,EAAE,UAAU,CAAC;IACnB,YAAY,EAAE,MAAM,CAAC;CACtB,CAAC;AAEF,MAAM,MAAM,oBAAoB,GAAG;IACjC,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,IAAI,EAAE,YAAY,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,cAAc,EAAE,MAAM,CAAC;IACvB,cAAc,EAAE,MAAM,EAAE,CAAC;CAC1B,CAAC;AAEF,MAAM,MAAM,gBAAgB,GAAG,oBAAoB,GACjD,CAAC,oBAAoB,GAAG,wBAAwB,CAAC,CAAC"}
@@ -94,6 +94,7 @@ export declare class LoginHelper {
94
94
  githubLogin(username: string, password: string, twofactor: string): Promise<string>;
95
95
  githubLoginFromSettingsPage(username: string, password: string, twofactor: string): Promise<string>;
96
96
  microsoftAzureLogin(username: string, password: string): Promise<"Already logged in" | "Login successful" | "User does not exist">;
97
+ private waitForSidebar;
97
98
  }
98
99
  export declare function setupBrowser(browser: Browser, testInfo: TestInfo): Promise<{
99
100
  page: Page;
@@ -1 +1 @@
1
- {"version":3,"file":"common.d.ts","sourceRoot":"","sources":["../../../src/playwright/helpers/common.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAG1C,OAAO,KAAK,EAAE,OAAO,EAAE,cAAc,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAOhF;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAGxD;AAED;;;;;;GAMG;AACH,MAAM,MAAM,aAAa,GAAG,UAAU,CAAC,cAAc,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AAExE,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,GAAG,aAAa,GAAG,SAAS,CAQzE;AAED;;;;;;;;GAQG;AACH,wBAAsB,2BAA2B,CAC/C,IAAI,EAAE,IAAI,EACV,IAAI,EAAE,MAAM,GACX,OAAO,CAAC,IAAI,CAAC,CAQf;AAED;;;;;;;;GAQG;AACH,wBAAsB,qBAAqB,CAAC,CAAC,EAC3C,IAAI,EAAE,MAAM,EACZ,EAAE,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,GACnB,OAAO,CAAC,CAAC,CAAC,CAYZ;AAED;;;;;;;;;;;;;;;GAeG;AACH,wBAAsB,mBAAmB,CACvC,IAAI,EAAE,MAAM,EACZ,MAAM,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,GAC1B,OAAO,CAAC,QAAQ,GAAG,SAAS,CAAC,CAQ/B;AAED,qBAAa,WAAW;IACtB,IAAI,EAAE,IAAI,CAAC;IACX,QAAQ,EAAE,QAAQ,CAAC;gBAEP,IAAI,EAAE,IAAI;IAKhB,YAAY;IAcZ,OAAO;YAMC,aAAa;IA2CrB,eAAe,CAAC,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM;IAOnE;;;OAGG;IACG,mBAAmB,CACvB,MAAM,GAAE,MAAkC,EAC1C,QAAQ,GAAE,MAAkC;IAoBxC,iBAAiB,CACrB,MAAM,GAAE,MAA+C;YAa3C,mBAAmB;YAwCnB,oBAAoB;IAW5B,4BAA4B;YASpB,uBAAuB;IAgB/B,YAAY,CAAC,KAAK,EAAE,MAAM;IA2B1B,2BAA2B,CAAC,KAAK,UAAQ;IAU/C,mBAAmB,IAAI,MAAM;IAIvB,mBAAmB;IAgBzB,eAAe,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM;IAevC,eAAe,IAAI,MAAM;IAKnB,aAAa,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM;YAqCxC,sBAAsB;IAoD9B,WAAW,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM;IAYjE,2BAA2B,CAC/B,QAAQ,EAAE,MAAM,EAChB,QAAQ,EAAE,MAAM,EAChB,SAAS,EAAE,MAAM;IAYb,mBAAmB,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM;CA2C7D;AAED,wBAAsB,YAAY,CAAC,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ;;;GAWtE"}
1
+ {"version":3,"file":"common.d.ts","sourceRoot":"","sources":["../../../src/playwright/helpers/common.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAG1C,OAAO,KAAK,EAAE,OAAO,EAAE,cAAc,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAOhF;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAGxD;AAED;;;;;;GAMG;AACH,MAAM,MAAM,aAAa,GAAG,UAAU,CAAC,cAAc,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AAExE,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,GAAG,aAAa,GAAG,SAAS,CAQzE;AAED;;;;;;;;GAQG;AACH,wBAAsB,2BAA2B,CAC/C,IAAI,EAAE,IAAI,EACV,IAAI,EAAE,MAAM,GACX,OAAO,CAAC,IAAI,CAAC,CAQf;AAED;;;;;;;;GAQG;AACH,wBAAsB,qBAAqB,CAAC,CAAC,EAC3C,IAAI,EAAE,MAAM,EACZ,EAAE,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,GACnB,OAAO,CAAC,CAAC,CAAC,CAYZ;AAED;;;;;;;;;;;;;;;GAeG;AACH,wBAAsB,mBAAmB,CACvC,IAAI,EAAE,MAAM,EACZ,MAAM,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,GAC1B,OAAO,CAAC,QAAQ,GAAG,SAAS,CAAC,CAQ/B;AAED,qBAAa,WAAW;IACtB,IAAI,EAAE,IAAI,CAAC;IACX,QAAQ,EAAE,QAAQ,CAAC;gBAEP,IAAI,EAAE,IAAI;IAKhB,YAAY;IAcZ,OAAO;YAMC,aAAa;IA2CrB,eAAe,CAAC,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM;IAOnE;;;OAGG;IACG,mBAAmB,CACvB,MAAM,GAAE,MAAkC,EAC1C,QAAQ,GAAE,MAAkC;IAoBxC,iBAAiB,CACrB,MAAM,GAAE,MAA+C;YAa3C,mBAAmB;YAuCnB,oBAAoB;IAW5B,4BAA4B;YASpB,uBAAuB;IAgB/B,YAAY,CAAC,KAAK,EAAE,MAAM;IA2B1B,2BAA2B,CAAC,KAAK,UAAQ;IAU/C,mBAAmB,IAAI,MAAM;IAIvB,mBAAmB;IAgBzB,eAAe,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM;IAevC,eAAe,IAAI,MAAM;IAKnB,aAAa,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM;YAqCxC,sBAAsB;IAoD9B,WAAW,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM;IAYjE,2BAA2B,CAC/B,QAAQ,EAAE,MAAM,EAChB,QAAQ,EAAE,MAAM,EAChB,SAAS,EAAE,MAAM;IAYb,mBAAmB,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM;YA4C9C,cAAc;CAO7B;AAED,wBAAsB,YAAY,CAAC,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ;;;GAWtE"}
@@ -123,7 +123,7 @@ export class LoginHelper {
123
123
  });
124
124
  await this.uiHelper.verifyHeading("Select a sign-in method");
125
125
  await this.uiHelper.clickButton("Enter");
126
- await this.page.waitForSelector("nav a", { timeout: 10_000 });
126
+ await this.waitForSidebar();
127
127
  }
128
128
  async signOut() {
129
129
  await this.page.click(SETTINGS_PAGE_COMPONENTS.userSettingsMenu);
@@ -181,7 +181,7 @@ export class LoginHelper {
181
181
  }
182
182
  const popup = await popupPromise;
183
183
  await this.logintoKeycloak(popup, userid, password);
184
- await this.page.waitForSelector("nav a", { timeout: 30_000 });
184
+ await this.waitForSidebar();
185
185
  }
186
186
  async loginAsGithubUser(userid = process.env.VAULT_GH_USER_ID) {
187
187
  const sessionFileName = githubSessionFile(userid);
@@ -204,8 +204,7 @@ export class LoginHelper {
204
204
  await this.uiHelper.waitForLoad(12000);
205
205
  await this.uiHelper.clickButton("Sign In");
206
206
  // Wait for either: sidebar appears (auto-login) or popup opens (needs auth)
207
- const navPromise = this.page
208
- .waitForSelector("nav a", { timeout: 15_000 })
207
+ const navPromise = this.waitForSidebar(15_000)
209
208
  .then(() => "nav")
210
209
  .catch(() => null);
211
210
  const popupPromise = this.page
@@ -227,7 +226,7 @@ export class LoginHelper {
227
226
  await this.uiHelper.waitForLoad(240000);
228
227
  await this.uiHelper.clickButton("Sign In");
229
228
  await this.checkAndReauthorizeGithubApp();
230
- await this.page.waitForSelector("nav a", { timeout: 10_000 });
229
+ await this.waitForSidebar(10000);
231
230
  await writeStorageStateAtomically(this.page, sessionFileName);
232
231
  console.log(`Authentication state saved for user: ${userid}`);
233
232
  }
@@ -461,6 +460,13 @@ export class LoginHelper {
461
460
  }
462
461
  }
463
462
  }
463
+ async waitForSidebar(timeout = 30_000) {
464
+ return this.page
465
+ .getByLabel("sidebar nav")
466
+ .getByRole("link")
467
+ .first()
468
+ .waitFor({ state: "visible", timeout });
469
+ }
464
470
  }
465
471
  export async function setupBrowser(browser, testInfo) {
466
472
  const context = await browser.newContext({
@@ -16,7 +16,7 @@ describe("github session file naming", () => {
16
16
  // same 30-second window submit the identical code and GitHub rejects the second.
17
17
  // Sharing the session is the point; withGithubSessionLock is what makes it safe.
18
18
  const file = githubSessionFile("rhdh-qe");
19
- assert.doesNotMatch(path.basename(file), /app-next|project/);
19
+ assert.doesNotMatch(path.basename(file), /project/);
20
20
  });
21
21
  it("is absolute, so it does not follow a later chdir", () => {
22
22
  assert.ok(path.isAbsolute(githubSessionFile("rhdh-qe")));
@@ -107,6 +107,11 @@ export declare function normalizeDisablePluginName(plugin: string): string;
107
107
  * @returns Dynamic plugins configuration that disables listed plugins
108
108
  */
109
109
  export declare function disablePlugins(plugins: string[]): DynamicPluginsConfig;
110
+ /**
111
+ * Marks matching plugins disabled and adds fallback disable entries for plugins
112
+ * that are not already present in the merged configuration.
113
+ */
114
+ export declare function applyDisabledPlugins(config: DynamicPluginsConfig, disabledConfig: DynamicPluginsConfig): DynamicPluginsConfig;
110
115
  /**
111
116
  * Auto-generates plugin entries from workspace metadata files.
112
117
  * Creates raw entries with local paths and disabled: false.
@@ -1 +1 @@
1
- {"version":3,"file":"plugin-metadata.d.ts","sourceRoot":"","sources":["../../src/utils/plugin-metadata.ts"],"names":[],"mappings":"AAYA,MAAM,WAAW,cAAc;IAC7B,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACtC,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;IACnB,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAgBD,MAAM,WAAW,WAAW;IAC1B,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,YAAY,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACvC,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACxB;AAED,MAAM,WAAW,oBAAoB;IACnC,OAAO,CAAC,EAAE,WAAW,EAAE,CAAC;IACxB,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;IACpB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACxB;AAID;;;;;;;;;GASG;AACH,wBAAgB,YAAY,IAAI,OAAO,CAqBtC;AAoBD;;;;;;;;;GASG;AACH,wBAAsB,oBAAoB,IAAI,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CA+CjE;AAED;;;;;;;GAOG;AACH,wBAAgB,eAAe,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM,CAc3D;AAID;;;;;;;;;GASG;AACH,wBAAgB,iBAAiB,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,CAI5D;AAYD,eAAO,MAAM,qBAAqB,gBAAgB,CAAC;AAEnD,wBAAgB,oBAAoB,CAClC,YAAY,GAAE,MAA8B,GAC3C,MAAM,GAAG,IAAI,CAQf;AAED,wBAAsB,iBAAiB,CACrC,QAAQ,EAAE,MAAM,GACf,OAAO,CAAC,cAAc,CAAC,CA2BzB;AAED,wBAAsB,qBAAqB,CACzC,WAAW,EAAE,MAAM,GAClB,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC,CAwBtC;AA2JD;;;;;;;GAOG;AACH;;;;;GAKG;AACH,wBAAgB,2BAA2B,CAAC,KAAK,EAAE;IACjD,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB,GAAG,MAAM,CAMT;AAyHD;;;;;;;;GAQG;AACH,wBAAgB,0BAA0B,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAajE;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,cAAc,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,oBAAoB,CAuBtE;AAED;;;;;;;GAOG;AACH,wBAAsB,2BAA2B,CAC/C,YAAY,GAAE,MAA8B,GAC3C,OAAO,CAAC,oBAAoB,CAAC,CAwB/B;AA2BD;;;;;;;;;;;;;;;;;;;GAmBG;AACH,wBAAsB,2BAA2B,CAC/C,MAAM,EAAE,oBAAoB,EAC5B,YAAY,GAAE,MAA8B,EAC5C,YAAY,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC,GACzB,OAAO,CAAC,oBAAoB,CAAC,CAsC/B"}
1
+ {"version":3,"file":"plugin-metadata.d.ts","sourceRoot":"","sources":["../../src/utils/plugin-metadata.ts"],"names":[],"mappings":"AAYA,MAAM,WAAW,cAAc;IAC7B,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACtC,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;IACnB,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAgBD,MAAM,WAAW,WAAW;IAC1B,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,YAAY,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACvC,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACxB;AAED,MAAM,WAAW,oBAAoB;IACnC,OAAO,CAAC,EAAE,WAAW,EAAE,CAAC;IACxB,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;IACpB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACxB;AAID;;;;;;;;;GASG;AACH,wBAAgB,YAAY,IAAI,OAAO,CAqBtC;AAoBD;;;;;;;;;GASG;AACH,wBAAsB,oBAAoB,IAAI,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CA+CjE;AAED;;;;;;;GAOG;AACH,wBAAgB,eAAe,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM,CAc3D;AAID;;;;;;;;;GASG;AACH,wBAAgB,iBAAiB,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,CAI5D;AAYD,eAAO,MAAM,qBAAqB,gBAAgB,CAAC;AAEnD,wBAAgB,oBAAoB,CAClC,YAAY,GAAE,MAA8B,GAC3C,MAAM,GAAG,IAAI,CAQf;AAED,wBAAsB,iBAAiB,CACrC,QAAQ,EAAE,MAAM,GACf,OAAO,CAAC,cAAc,CAAC,CA2BzB;AAED,wBAAsB,qBAAqB,CACzC,WAAW,EAAE,MAAM,GAClB,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC,CAwBtC;AA2JD;;;;;;;GAOG;AACH;;;;;GAKG;AACH,wBAAgB,2BAA2B,CAAC,KAAK,EAAE;IACjD,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB,GAAG,MAAM,CAMT;AAyHD;;;;;;;;GAQG;AACH,wBAAgB,0BAA0B,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAajE;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,cAAc,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,oBAAoB,CAuBtE;AAED;;;GAGG;AACH,wBAAgB,oBAAoB,CAClC,MAAM,EAAE,oBAAoB,EAC5B,cAAc,EAAE,oBAAoB,GACnC,oBAAoB,CAuBtB;AAED;;;;;;;GAOG;AACH,wBAAsB,2BAA2B,CAC/C,YAAY,GAAE,MAA8B,GAC3C,OAAO,CAAC,oBAAoB,CAAC,CAwB/B;AA2BD;;;;;;;;;;;;;;;;;;;GAmBG;AACH,wBAAsB,2BAA2B,CAC/C,MAAM,EAAE,oBAAoB,EAC5B,YAAY,GAAE,MAA8B,EAC5C,YAAY,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC,GACzB,OAAO,CAAC,oBAAoB,CAAC,CAsC/B"}
@@ -425,6 +425,25 @@ export function disablePlugins(plugins) {
425
425
  }
426
426
  return pluginConfig;
427
427
  }
428
+ /**
429
+ * Marks matching plugins disabled and adds fallback disable entries for plugins
430
+ * that are not already present in the merged configuration.
431
+ */
432
+ export function applyDisabledPlugins(config, disabledConfig) {
433
+ const disabledPlugins = disabledConfig.plugins ?? [];
434
+ const disabledNames = new Set(disabledPlugins.map((plugin) => getNormalizedPluginMergeKey(plugin)));
435
+ const plugins = (config.plugins ?? []).map((plugin) => disabledNames.has(getNormalizedPluginMergeKey(plugin))
436
+ ? { ...plugin, disabled: true }
437
+ : plugin);
438
+ const presentNames = new Set(plugins.map((plugin) => getNormalizedPluginMergeKey(plugin)));
439
+ return {
440
+ ...config,
441
+ plugins: [
442
+ ...plugins,
443
+ ...disabledPlugins.filter((plugin) => !presentNames.has(getNormalizedPluginMergeKey(plugin))),
444
+ ],
445
+ };
446
+ }
428
447
  /**
429
448
  * Auto-generates plugin entries from workspace metadata files.
430
449
  * Creates raw entries with local paths and disabled: false.
@@ -5,7 +5,7 @@
5
5
  import { describe, it } from "node:test";
6
6
  import assert from "node:assert";
7
7
  import fs from "fs-extra";
8
- import { extractPluginName, getNormalizedPluginMergeKey, disablePlugins, normalizeDisablePluginName, generatePluginsFromMetadata, } from "../plugin-metadata.js";
8
+ import { extractPluginName, getNormalizedPluginMergeKey, disablePlugins, applyDisabledPlugins, normalizeDisablePluginName, generatePluginsFromMetadata, } from "../plugin-metadata.js";
9
9
  import { createMetadataFixture } from "./helpers.js";
10
10
  // ── extractPluginName ────────────────────────────────────────────────────────
11
11
  describe("extractPluginName", () => {
@@ -70,6 +70,22 @@ describe("normalizeDisablePluginName", () => {
70
70
  });
71
71
  });
72
72
  describe("disablePlugins", () => {
73
+ it("disables an existing OCI entry by normalized plugin name", () => {
74
+ const result = applyDisabledPlugins({
75
+ plugins: [
76
+ {
77
+ package: "oci://ghcr.io/redhat-developer/rhdh-plugin-export-overlays/red-hat-developer-hub-backstage-plugin-app-auth:bs_1.54.6__1.1.0",
78
+ disabled: false,
79
+ },
80
+ ],
81
+ }, disablePlugins(["red-hat-developer-hub-backstage-plugin-app-auth"]));
82
+ assert.deepStrictEqual(result.plugins, [
83
+ {
84
+ package: "oci://ghcr.io/redhat-developer/rhdh-plugin-export-overlays/red-hat-developer-hub-backstage-plugin-app-auth:bs_1.54.6__1.1.0",
85
+ disabled: true,
86
+ },
87
+ ]);
88
+ });
73
89
  it("returns empty plugins array for empty input", () => {
74
90
  const result = disablePlugins([]);
75
91
  assert.deepStrictEqual(result, { plugins: [] });
@@ -37,8 +37,6 @@ export declare class WorkspacePaths {
37
37
  static get dynamicPlugins(): string;
38
38
  /** Default Helm value file path: `tests/config/value_file.yaml` */
39
39
  static get valueFile(): string;
40
- /** Optional Helm values merged after `value_file.yaml` when the new frontend system is active (explicit option, namespace suffix `-app-next`, or `USE_NEW_FRONTEND_SYSTEM=true`) and this file exists. */
41
- static get valueFileAppNext(): string;
42
40
  /** Default operator subscription path: `tests/config/subscription.yaml` */
43
41
  static get subscription(): string;
44
42
  }
@@ -1 +1 @@
1
- {"version":3,"file":"workspace-paths.d.ts","sourceRoot":"","sources":["../../src/utils/workspace-paths.ts"],"names":[],"mappings":"AAGA;;;;;;;;;;;;;;;;;;GAkBG;AACH,qBAAa,cAAc;IACzB,OAAO;IAEP,4FAA4F;IAC5F,MAAM,KAAK,OAAO,IAAI,MAAM,CAE3B;IAED,4DAA4D;IAC5D,MAAM,CAAC,OAAO,CAAC,YAAY,EAAE,MAAM,GAAG,MAAM;IAI5C,0DAA0D;IAC1D,MAAM,KAAK,aAAa,IAAI,MAAM,CAEjC;IAED,8DAA8D;IAC9D,MAAM,KAAK,WAAW,IAAI,MAAM,CAE/B;IAED,gFAAgF;IAChF,MAAM,KAAK,SAAS,IAAI,MAAM,CAE7B;IAID,mEAAmE;IACnE,MAAM,KAAK,SAAS,IAAI,MAAM,CAE7B;IAED,6DAA6D;IAC7D,MAAM,KAAK,OAAO,IAAI,MAAM,CAE3B;IAED,wEAAwE;IACxE,MAAM,KAAK,cAAc,IAAI,MAAM,CAElC;IAED,mEAAmE;IACnE,MAAM,KAAK,SAAS,IAAI,MAAM,CAE7B;IAED,0MAA0M;IAC1M,MAAM,KAAK,gBAAgB,IAAI,MAAM,CAEpC;IAED,2EAA2E;IAC3E,MAAM,KAAK,YAAY,IAAI,MAAM,CAEhC;CACF"}
1
+ {"version":3,"file":"workspace-paths.d.ts","sourceRoot":"","sources":["../../src/utils/workspace-paths.ts"],"names":[],"mappings":"AAGA;;;;;;;;;;;;;;;;;;GAkBG;AACH,qBAAa,cAAc;IACzB,OAAO;IAEP,4FAA4F;IAC5F,MAAM,KAAK,OAAO,IAAI,MAAM,CAE3B;IAED,4DAA4D;IAC5D,MAAM,CAAC,OAAO,CAAC,YAAY,EAAE,MAAM,GAAG,MAAM;IAI5C,0DAA0D;IAC1D,MAAM,KAAK,aAAa,IAAI,MAAM,CAEjC;IAED,8DAA8D;IAC9D,MAAM,KAAK,WAAW,IAAI,MAAM,CAE/B;IAED,gFAAgF;IAChF,MAAM,KAAK,SAAS,IAAI,MAAM,CAE7B;IAID,mEAAmE;IACnE,MAAM,KAAK,SAAS,IAAI,MAAM,CAE7B;IAED,6DAA6D;IAC7D,MAAM,KAAK,OAAO,IAAI,MAAM,CAE3B;IAED,wEAAwE;IACxE,MAAM,KAAK,cAAc,IAAI,MAAM,CAElC;IAED,mEAAmE;IACnE,MAAM,KAAK,SAAS,IAAI,MAAM,CAE7B;IAED,2EAA2E;IAC3E,MAAM,KAAK,YAAY,IAAI,MAAM,CAEhC;CACF"}
@@ -58,10 +58,6 @@ export class WorkspacePaths {
58
58
  static get valueFile() {
59
59
  return path.resolve(this.e2eRoot, "tests/config/value_file.yaml");
60
60
  }
61
- /** Optional Helm values merged after `value_file.yaml` when the new frontend system is active (explicit option, namespace suffix `-app-next`, or `USE_NEW_FRONTEND_SYSTEM=true`) and this file exists. */
62
- static get valueFileAppNext() {
63
- return path.resolve(this.e2eRoot, "tests/config/value_file-app-next.yaml");
64
- }
65
61
  /** Default operator subscription path: `tests/config/subscription.yaml` */
66
62
  static get subscription() {
67
63
  return path.resolve(this.e2eRoot, "tests/config/subscription.yaml");
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@red-hat-developer-hub/e2e-test-utils",
3
- "version": "2.1.16",
3
+ "version": "2.1.18",
4
4
  "description": "Test utilities for RHDH E2E tests",
5
5
  "license": "Apache-2.0",
6
6
  "repository": {
@@ -1,5 +0,0 @@
1
- plugins:
2
- - package: oci://ghcr.io/redhat-developer/rhdh-plugin-export-overlays/red-hat-developer-hub-backstage-plugin-app-auth:bs_1.49.4__0.0.1
3
- disabled: false
4
- - package: oci://ghcr.io/redhat-developer/rhdh-plugin-export-overlays/red-hat-developer-hub-backstage-plugin-app-integrations:bs_1.49.4__0.0.1
5
- disabled: false
@@ -1,2 +0,0 @@
1
- # Helm values merge layer for the new frontend system (app-next); merged when NFS layers are active (additive; extend as needed).
2
- {}