@red-hat-developer-hub/e2e-test-utils 2.1.8 → 2.1.10
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.
- package/dist/deployment/rhdh/config/auth/github/dynamic-plugins.yaml +12 -0
- package/dist/deployment/rhdh/config/auth/guest/dynamic-plugins.yaml +9 -0
- package/dist/deployment/rhdh/config/auth/keycloak/dynamic-plugins.yaml +29 -1
- package/dist/deployment/rhdh/config/common/dynamic-plugins.yaml +1 -1
- package/dist/deployment/rhdh/constants.d.ts.map +1 -1
- package/dist/deployment/rhdh/constants.js +2 -2
- package/dist/utils/plugin-metadata.d.ts +2 -2
- package/dist/utils/plugin-metadata.js +3 -3
- package/dist/utils/tests/plugin-metadata.nightly.test.js +20 -18
- package/dist/utils/tests/plugin-metadata.test.js +4 -4
- package/package.json +1 -1
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
plugins:
|
|
2
|
+
# TODO: switch to oci://quay.io/rhdh/backstage-plugin-auth-backend-module-github-provider:{{inherit}} once published on quay
|
|
3
|
+
- package: oci://ghcr.io/redhat-developer/rhdh-plugin-export-overlays/backstage-plugin-auth-backend-module-github-provider:bs_1.52.0__0.5.4
|
|
4
|
+
disabled: false
|
|
5
|
+
pluginConfig:
|
|
6
|
+
auth:
|
|
7
|
+
providers:
|
|
8
|
+
github:
|
|
9
|
+
production:
|
|
10
|
+
clientId: ${GITHUB_OAUTH_APP_ID}
|
|
11
|
+
clientSecret: ${GITHUB_OAUTH_APP_SECRET}
|
|
12
|
+
callbackUrl: ${RHDH_BASE_URL}/api/auth/github/handler/frame
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
plugins:
|
|
2
|
+
# TODO: switch to oci://quay.io/rhdh/backstage-plugin-auth-backend-module-guest-provider:{{inherit}} once published on quay
|
|
3
|
+
- package: oci://ghcr.io/redhat-developer/rhdh-plugin-export-overlays/backstage-plugin-auth-backend-module-guest-provider:bs_1.52.0__0.2.20
|
|
4
|
+
disabled: false
|
|
5
|
+
pluginConfig:
|
|
6
|
+
auth:
|
|
7
|
+
providers:
|
|
8
|
+
guest:
|
|
9
|
+
dangerouslyAllowOutsideDevelopment: true
|
|
@@ -1,5 +1,8 @@
|
|
|
1
|
+
# catalog-backend-module-keycloak and oidc-provider are disabled in default.packages.yaml,
|
|
2
|
+
# so {{inherit}} fails at install. Use explicit overlays tags until these images are on quay.io/rhdh.
|
|
1
3
|
plugins:
|
|
2
|
-
|
|
4
|
+
# TODO: switch to oci://quay.io/rhdh/backstage-community-plugin-catalog-backend-module-keycloak:{{inherit}} once published on quay
|
|
5
|
+
- package: oci://ghcr.io/redhat-developer/rhdh-plugin-export-overlays/backstage-community-plugin-catalog-backend-module-keycloak:bs_1.49.4__3.19.2
|
|
3
6
|
disabled: false
|
|
4
7
|
pluginConfig:
|
|
5
8
|
catalog:
|
|
@@ -18,3 +21,28 @@ plugins:
|
|
|
18
21
|
seconds: 15
|
|
19
22
|
timeout:
|
|
20
23
|
minutes: 1
|
|
24
|
+
# TODO: switch to oci://quay.io/rhdh/backstage-plugin-auth-backend-module-oidc-provider:{{inherit}} once published on quay
|
|
25
|
+
- package: oci://ghcr.io/redhat-developer/rhdh-plugin-export-overlays/backstage-plugin-auth-backend-module-oidc-provider:bs_1.52.0__0.4.17
|
|
26
|
+
disabled: false
|
|
27
|
+
pluginConfig:
|
|
28
|
+
auth:
|
|
29
|
+
providers:
|
|
30
|
+
oidc:
|
|
31
|
+
production:
|
|
32
|
+
metadataUrl: ${KEYCLOAK_METADATA_URL}
|
|
33
|
+
clientId: ${KEYCLOAK_CLIENT_ID}
|
|
34
|
+
clientSecret: ${KEYCLOAK_CLIENT_SECRET}
|
|
35
|
+
prompt: auto
|
|
36
|
+
callbackUrl: ${RHDH_BASE_URL}/api/auth/oidc/handler/frame
|
|
37
|
+
signIn:
|
|
38
|
+
resolvers:
|
|
39
|
+
- resolver: emailLocalPartMatchingUserEntityName
|
|
40
|
+
# Workspaces using auth: "keycloak" may still call loginAsGuest() (e.g. topology RBAC).
|
|
41
|
+
# TODO: switch to oci://quay.io/rhdh/backstage-plugin-auth-backend-module-guest-provider:{{inherit}} once published on quay
|
|
42
|
+
- package: oci://ghcr.io/redhat-developer/rhdh-plugin-export-overlays/backstage-plugin-auth-backend-module-guest-provider:bs_1.52.0__0.2.20
|
|
43
|
+
disabled: false
|
|
44
|
+
pluginConfig:
|
|
45
|
+
auth:
|
|
46
|
+
providers:
|
|
47
|
+
guest:
|
|
48
|
+
dangerouslyAllowOutsideDevelopment: true
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
includes:
|
|
2
2
|
- dynamic-plugins.default.yaml
|
|
3
3
|
plugins:
|
|
4
|
-
- package: oci://
|
|
4
|
+
- package: oci://quay.io/rhdh/red-hat-developer-hub-backstage-plugin-quickstart:{{inherit}}
|
|
5
5
|
disabled: true
|
|
@@ -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;;;;;;;;;;;;CA2B9J,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,
|
|
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;;;;;;;;;;;;CA2B9J,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"}
|
|
@@ -22,7 +22,7 @@ export const AUTH_CONFIG_PATHS = {
|
|
|
22
22
|
guest: {
|
|
23
23
|
appConfig: path.join(PACKAGE_ROOT, "dist/deployment/rhdh/config/auth/guest/app-config.yaml"),
|
|
24
24
|
secrets: "",
|
|
25
|
-
dynamicPlugins: "",
|
|
25
|
+
dynamicPlugins: path.join(PACKAGE_ROOT, "dist/deployment/rhdh/config/auth/guest/dynamic-plugins.yaml"),
|
|
26
26
|
},
|
|
27
27
|
keycloak: {
|
|
28
28
|
appConfig: path.join(PACKAGE_ROOT, "dist/deployment/rhdh/config/auth/keycloak/app-config.yaml"),
|
|
@@ -32,7 +32,7 @@ export const AUTH_CONFIG_PATHS = {
|
|
|
32
32
|
github: {
|
|
33
33
|
appConfig: path.join(PACKAGE_ROOT, "dist/deployment/rhdh/config/auth/github/app-config.yaml"),
|
|
34
34
|
secrets: path.join(PACKAGE_ROOT, "dist/deployment/rhdh/config/auth/github/secrets.yaml"),
|
|
35
|
-
dynamicPlugins: "",
|
|
35
|
+
dynamicPlugins: path.join(PACKAGE_ROOT, "dist/deployment/rhdh/config/auth/github/dynamic-plugins.yaml"),
|
|
36
36
|
mergeStrategy: { arrayMergeStrategy: { byKey: "target" } },
|
|
37
37
|
},
|
|
38
38
|
};
|
|
@@ -44,7 +44,7 @@ export declare function fetchDefaultPackages(): Promise<Set<string>>;
|
|
|
44
44
|
* Resolution priority:
|
|
45
45
|
* 1. NIGHTLY_DPDY_OCI_REGISTRY_MAP — JSON object mapping registry → array of package names
|
|
46
46
|
* 2. NIGHTLY_DPDY_OCI_REGISTRY — blanket override for all plugins using {{inherit}}
|
|
47
|
-
* 3. Default:
|
|
47
|
+
* 3. Default: quay.io/rhdh
|
|
48
48
|
*/
|
|
49
49
|
export declare function getDpdyRegistry(packageName: string): string;
|
|
50
50
|
/**
|
|
@@ -101,7 +101,7 @@ export declare function normalizeDisablePluginName(plugin: string): string;
|
|
|
101
101
|
* mountPoints / config conflicts with the workspace's PR OCI image.
|
|
102
102
|
*
|
|
103
103
|
* Registry resolution: NIGHTLY_DPDY_OCI_REGISTRY, else
|
|
104
|
-
*
|
|
104
|
+
* quay.io/rhdh.
|
|
105
105
|
*
|
|
106
106
|
* @param plugins plugin names, wrapper paths, and/or OCI refs to disable
|
|
107
107
|
* @returns Dynamic plugins configuration that disables listed plugins
|
|
@@ -37,7 +37,7 @@ export function isNightlyJob() {
|
|
|
37
37
|
const DEFAULT_PACKAGES_BASE_URL = "https://raw.githubusercontent.com/redhat-developer/rhdh-plugin-export-overlays/refs/heads";
|
|
38
38
|
// release-1.10 still hosts default.packages.yaml in the rhdh repo (pre-migration)
|
|
39
39
|
const LEGACY_DEFAULT_PACKAGES_BASE_URL = "https://raw.githubusercontent.com/redhat-developer/rhdh/refs/heads";
|
|
40
|
-
const DEFAULT_DPDY_OCI_REGISTRY = "
|
|
40
|
+
const DEFAULT_DPDY_OCI_REGISTRY = "quay.io/rhdh";
|
|
41
41
|
/**
|
|
42
42
|
* Fetches the list of packages from default.packages.yaml (source for the
|
|
43
43
|
* dynamic-plugins.default.yaml — DPDY — in the catalog index image shipped
|
|
@@ -86,7 +86,7 @@ export async function fetchDefaultPackages() {
|
|
|
86
86
|
* Resolution priority:
|
|
87
87
|
* 1. NIGHTLY_DPDY_OCI_REGISTRY_MAP — JSON object mapping registry → array of package names
|
|
88
88
|
* 2. NIGHTLY_DPDY_OCI_REGISTRY — blanket override for all plugins using {{inherit}}
|
|
89
|
-
* 3. Default:
|
|
89
|
+
* 3. Default: quay.io/rhdh
|
|
90
90
|
*/
|
|
91
91
|
export function getDpdyRegistry(packageName) {
|
|
92
92
|
const map = process.env.NIGHTLY_DPDY_OCI_REGISTRY_MAP;
|
|
@@ -398,7 +398,7 @@ export function normalizeDisablePluginName(plugin) {
|
|
|
398
398
|
* mountPoints / config conflicts with the workspace's PR OCI image.
|
|
399
399
|
*
|
|
400
400
|
* Registry resolution: NIGHTLY_DPDY_OCI_REGISTRY, else
|
|
401
|
-
*
|
|
401
|
+
* quay.io/rhdh.
|
|
402
402
|
*
|
|
403
403
|
* @param plugins plugin names, wrapper paths, and/or OCI refs to disable
|
|
404
404
|
* @returns Dynamic plugins configuration that disables listed plugins
|
|
@@ -234,7 +234,7 @@ describe("processPluginsForDeployment — nightly {{inherit}}", () => {
|
|
|
234
234
|
};
|
|
235
235
|
const dpdyPackages = new Set(["@backstage-community/plugin-tekton"]);
|
|
236
236
|
const result = await processPluginsForDeployment(config, metadataDir, dpdyPackages);
|
|
237
|
-
assert.strictEqual(result.plugins[0].package, "oci://
|
|
237
|
+
assert.strictEqual(result.plugins[0].package, "oci://quay.io/rhdh/backstage-community-plugin-tekton:{{inherit}}", "DPDY OCI plugin must resolve to {{inherit}} with default quay.io registry");
|
|
238
238
|
}
|
|
239
239
|
finally {
|
|
240
240
|
await fs.remove(metadataDir);
|
|
@@ -258,7 +258,7 @@ describe("processPluginsForDeployment — nightly {{inherit}}", () => {
|
|
|
258
258
|
],
|
|
259
259
|
};
|
|
260
260
|
const result = await processPluginsForDeployment(config, metadataDir, new Set(["@backstage-community/plugin-topology"]));
|
|
261
|
-
assert.strictEqual(result.plugins[0].package, "oci://
|
|
261
|
+
assert.strictEqual(result.plugins[0].package, "oci://quay.io/rhdh/backstage-community-plugin-topology:{{inherit}}", "{{inherit}} ref must use default RHEC registry with no alias suffix");
|
|
262
262
|
assert.ok(!result.plugins[0].package.includes("!"), "{{inherit}} ref must NOT include !alias suffix");
|
|
263
263
|
}
|
|
264
264
|
finally {
|
|
@@ -283,7 +283,7 @@ describe("processPluginsForDeployment — nightly {{inherit}}", () => {
|
|
|
283
283
|
],
|
|
284
284
|
};
|
|
285
285
|
const result = await processPluginsForDeployment(config, metadataDir, new Set(["@red-hat-developer-hub/backstage-plugin-orchestrator"]));
|
|
286
|
-
assert.strictEqual(result.plugins[0].package, "oci://
|
|
286
|
+
assert.strictEqual(result.plugins[0].package, "oci://quay.io/rhdh/red-hat-developer-hub-backstage-plugin-orchestrator:{{inherit}}", "{{inherit}} must use default RHEC registry regardless of metadata's ghcr.io");
|
|
287
287
|
}
|
|
288
288
|
finally {
|
|
289
289
|
await fs.remove(metadataDir);
|
|
@@ -296,14 +296,14 @@ describe("processPluginsForDeployment — nightly {{inherit}}", () => {
|
|
|
296
296
|
{
|
|
297
297
|
name: "backstage-community-plugin-tekton",
|
|
298
298
|
packageName: "@backstage-community/plugin-tekton",
|
|
299
|
-
dynamicArtifact: "oci://
|
|
299
|
+
dynamicArtifact: "oci://quay.io/rhdh/backstage-community-plugin-tekton@sha256:abc",
|
|
300
300
|
},
|
|
301
301
|
]);
|
|
302
302
|
try {
|
|
303
303
|
const config = {
|
|
304
304
|
plugins: [
|
|
305
305
|
{
|
|
306
|
-
package: "oci://
|
|
306
|
+
package: "oci://quay.io/rhdh/backstage-community-plugin-tekton@sha256:abc",
|
|
307
307
|
disabled: false,
|
|
308
308
|
},
|
|
309
309
|
],
|
|
@@ -325,7 +325,7 @@ describe("processPluginsForDeployment — nightly {{inherit}}", () => {
|
|
|
325
325
|
{
|
|
326
326
|
name: "backstage-community-plugin-tekton",
|
|
327
327
|
packageName: "@backstage-community/plugin-tekton",
|
|
328
|
-
dynamicArtifact: "oci://
|
|
328
|
+
dynamicArtifact: "oci://quay.io/rhdh/backstage-community-plugin-tekton@sha256:abc",
|
|
329
329
|
},
|
|
330
330
|
{
|
|
331
331
|
name: "red-hat-developer-hub-backstage-plugin-orchestrator",
|
|
@@ -337,7 +337,7 @@ describe("processPluginsForDeployment — nightly {{inherit}}", () => {
|
|
|
337
337
|
const config = {
|
|
338
338
|
plugins: [
|
|
339
339
|
{
|
|
340
|
-
package: "oci://
|
|
340
|
+
package: "oci://quay.io/rhdh/backstage-community-plugin-tekton@sha256:abc",
|
|
341
341
|
disabled: false,
|
|
342
342
|
},
|
|
343
343
|
{
|
|
@@ -352,7 +352,7 @@ describe("processPluginsForDeployment — nightly {{inherit}}", () => {
|
|
|
352
352
|
]);
|
|
353
353
|
const result = await processPluginsForDeployment(config, metadataDir, dpdyPackages);
|
|
354
354
|
assert.strictEqual(result.plugins[0].package, "oci://ghcr.io/redhat-developer/rhdh-plugin-export-overlays/backstage-community-plugin-tekton:{{inherit}}", "tekton must use ghcr.io from NIGHTLY_DPDY_OCI_REGISTRY_MAP");
|
|
355
|
-
assert.strictEqual(result.plugins[1].package, "oci://
|
|
355
|
+
assert.strictEqual(result.plugins[1].package, "oci://quay.io/rhdh/red-hat-developer-hub-backstage-plugin-orchestrator:{{inherit}}", "orchestrator must use default RHEC (not in map)");
|
|
356
356
|
}
|
|
357
357
|
finally {
|
|
358
358
|
await fs.remove(metadataDir);
|
|
@@ -369,23 +369,23 @@ describe("processPluginsForDeployment — nightly {{inherit}}", () => {
|
|
|
369
369
|
{
|
|
370
370
|
name: "backstage-community-plugin-tekton",
|
|
371
371
|
packageName: "@backstage-community/plugin-tekton",
|
|
372
|
-
dynamicArtifact: "oci://
|
|
372
|
+
dynamicArtifact: "oci://quay.io/rhdh/backstage-community-plugin-tekton@sha256:abc",
|
|
373
373
|
},
|
|
374
374
|
{
|
|
375
375
|
name: "red-hat-developer-hub-backstage-plugin-orchestrator",
|
|
376
376
|
packageName: "@red-hat-developer-hub/backstage-plugin-orchestrator",
|
|
377
|
-
dynamicArtifact: "oci://
|
|
377
|
+
dynamicArtifact: "oci://quay.io/rhdh/red-hat-developer-hub-backstage-plugin-orchestrator@sha256:def",
|
|
378
378
|
},
|
|
379
379
|
]);
|
|
380
380
|
try {
|
|
381
381
|
const config = {
|
|
382
382
|
plugins: [
|
|
383
383
|
{
|
|
384
|
-
package: "oci://
|
|
384
|
+
package: "oci://quay.io/rhdh/backstage-community-plugin-tekton@sha256:abc",
|
|
385
385
|
disabled: false,
|
|
386
386
|
},
|
|
387
387
|
{
|
|
388
|
-
package: "oci://
|
|
388
|
+
package: "oci://quay.io/rhdh/red-hat-developer-hub-backstage-plugin-orchestrator@sha256:def",
|
|
389
389
|
disabled: false,
|
|
390
390
|
},
|
|
391
391
|
],
|
|
@@ -547,7 +547,7 @@ describe("processPluginsForDeployment — nightly {{inherit}}", () => {
|
|
|
547
547
|
// Only tekton is in DPDY
|
|
548
548
|
const result = await processPluginsForDeployment(config, metadataDir, new Set(["@backstage-community/plugin-tekton"]));
|
|
549
549
|
// Tekton: DPDY → {{inherit}} with default RHEC, no config injection
|
|
550
|
-
assert.strictEqual(result.plugins[0].package, "oci://
|
|
550
|
+
assert.strictEqual(result.plugins[0].package, "oci://quay.io/rhdh/backstage-community-plugin-tekton:{{inherit}}", "DPDY plugin must use {{inherit}} with default RHEC registry");
|
|
551
551
|
assert.strictEqual(result.plugins[0].pluginConfig, undefined, "DPDY plugin must not have config injected");
|
|
552
552
|
// Scorecard: non-DPDY → full OCI ref, config injected
|
|
553
553
|
assert.ok(result.plugins[1].package.includes("bs_1.49.4__1.0.0"), "non-DPDY plugin must use full metadata ref");
|
|
@@ -566,7 +566,7 @@ describe("getDpdyRegistry", () => {
|
|
|
566
566
|
it("returns default RHEC registry when no env vars set", () => {
|
|
567
567
|
delete process.env.NIGHTLY_DPDY_OCI_REGISTRY;
|
|
568
568
|
delete process.env.NIGHTLY_DPDY_OCI_REGISTRY_MAP;
|
|
569
|
-
assert.strictEqual(getDpdyRegistry("@backstage-community/plugin-tekton"), "
|
|
569
|
+
assert.strictEqual(getDpdyRegistry("@backstage-community/plugin-tekton"), "quay.io/rhdh");
|
|
570
570
|
});
|
|
571
571
|
it("NIGHTLY_DPDY_OCI_REGISTRY overrides default for all plugins", () => {
|
|
572
572
|
process.env.NIGHTLY_DPDY_OCI_REGISTRY =
|
|
@@ -593,7 +593,7 @@ describe("getDpdyRegistry", () => {
|
|
|
593
593
|
"@backstage-community/plugin-tekton",
|
|
594
594
|
],
|
|
595
595
|
});
|
|
596
|
-
assert.strictEqual(getDpdyRegistry("@red-hat-developer-hub/backstage-plugin-orchestrator"), "
|
|
596
|
+
assert.strictEqual(getDpdyRegistry("@red-hat-developer-hub/backstage-plugin-orchestrator"), "quay.io/rhdh", "unlisted plugin must fall back to default RHEC");
|
|
597
597
|
});
|
|
598
598
|
it("NIGHTLY_DPDY_OCI_REGISTRY_MAP takes precedence over NIGHTLY_DPDY_OCI_REGISTRY", () => {
|
|
599
599
|
process.env.NIGHTLY_DPDY_OCI_REGISTRY = "quay.io/rhdh";
|
|
@@ -609,10 +609,12 @@ describe("getDpdyRegistry", () => {
|
|
|
609
609
|
"ghcr.io/redhat-developer/rhdh-plugin-export-overlays": [
|
|
610
610
|
"@backstage-community/plugin-tekton",
|
|
611
611
|
],
|
|
612
|
-
"
|
|
612
|
+
"registry.access.redhat.com": [
|
|
613
|
+
"@red-hat-developer-hub/backstage-plugin-orchestrator",
|
|
614
|
+
],
|
|
613
615
|
});
|
|
614
616
|
assert.strictEqual(getDpdyRegistry("@backstage-community/plugin-tekton"), "ghcr.io/redhat-developer/rhdh-plugin-export-overlays");
|
|
615
|
-
assert.strictEqual(getDpdyRegistry("@red-hat-developer-hub/backstage-plugin-orchestrator"), "
|
|
616
|
-
assert.strictEqual(getDpdyRegistry("@backstage-community/plugin-argocd"), "
|
|
617
|
+
assert.strictEqual(getDpdyRegistry("@red-hat-developer-hub/backstage-plugin-orchestrator"), "registry.access.redhat.com");
|
|
618
|
+
assert.strictEqual(getDpdyRegistry("@backstage-community/plugin-argocd"), "quay.io/rhdh", "unlisted plugin falls back to default");
|
|
617
619
|
});
|
|
618
620
|
});
|
|
@@ -86,7 +86,7 @@ describe("disablePlugins", () => {
|
|
|
86
86
|
disabled: true,
|
|
87
87
|
});
|
|
88
88
|
assert.deepStrictEqual(result.plugins[1], {
|
|
89
|
-
package: "oci://
|
|
89
|
+
package: "oci://quay.io/rhdh/backstage-community-plugin-tech-radar:{{inherit}}",
|
|
90
90
|
disabled: true,
|
|
91
91
|
});
|
|
92
92
|
assert.deepStrictEqual(result.plugins[2], {
|
|
@@ -94,7 +94,7 @@ describe("disablePlugins", () => {
|
|
|
94
94
|
disabled: true,
|
|
95
95
|
});
|
|
96
96
|
assert.deepStrictEqual(result.plugins[3], {
|
|
97
|
-
package: "oci://
|
|
97
|
+
package: "oci://quay.io/rhdh/backstage-plugin-kubernetes:{{inherit}}",
|
|
98
98
|
disabled: true,
|
|
99
99
|
});
|
|
100
100
|
});
|
|
@@ -103,7 +103,7 @@ describe("disablePlugins", () => {
|
|
|
103
103
|
const result = disablePlugins([
|
|
104
104
|
"./dynamic-plugins/dist/backstage-plugin-kubernetes-dynamic",
|
|
105
105
|
"backstage-plugin-kubernetes",
|
|
106
|
-
"oci://
|
|
106
|
+
"oci://quay.io/rhdh/backstage-plugin-kubernetes:{{inherit}}",
|
|
107
107
|
]);
|
|
108
108
|
assert.strictEqual(result.plugins.length, 2);
|
|
109
109
|
assert.deepStrictEqual(result.plugins[0], {
|
|
@@ -111,7 +111,7 @@ describe("disablePlugins", () => {
|
|
|
111
111
|
disabled: true,
|
|
112
112
|
});
|
|
113
113
|
assert.deepStrictEqual(result.plugins[1], {
|
|
114
|
-
package: "oci://
|
|
114
|
+
package: "oci://quay.io/rhdh/backstage-plugin-kubernetes:{{inherit}}",
|
|
115
115
|
disabled: true,
|
|
116
116
|
});
|
|
117
117
|
});
|