diff --git a/.ci/pipelines/value_files/diff-values_showcase-sanity-plugins.yaml b/.ci/pipelines/value_files/diff-values_showcase-sanity-plugins.yaml index 4a662674e0..9e99fbc464 100644 --- a/.ci/pipelines/value_files/diff-values_showcase-sanity-plugins.yaml +++ b/.ci/pipelines/value_files/diff-values_showcase-sanity-plugins.yaml @@ -2,7 +2,7 @@ global: dynamic: plugins: # sanity check https://issues.redhat.com/browse/RHIDP-5301 - - package: ./dynamic-plugins/dist/backstage-plugin-catalog-backend-module-gitlab-org-dynamic + - package: oci://ghcr.io/redhat-developer/rhdh-plugin-export-overlays/backstage-plugin-catalog-backend-module-gitlab-org:bs_1.52.0__0.2.22 enabled: true pluginConfig: catalog: @@ -21,7 +21,7 @@ global: enabled: true - package: "oci://ghcr.io/redhat-developer/rhdh-plugin-export-overlays/roadiehq-backstage-plugin-security-insights:bs_1.49.4__3.3.1" enabled: true - - package: ./dynamic-plugins/dist/backstage-plugin-scaffolder-backend-module-gitlab-dynamic + - package: oci://ghcr.io/redhat-developer/rhdh-plugin-export-overlays/backstage-plugin-scaffolder-backend-module-gitlab:bs_1.52.0__0.11.7 enabled: true - package: "oci://ghcr.io/redhat-developer/rhdh-plugin-export-overlays/immobiliarelabs-backstage-plugin-gitlab:bs_1.49.4__7.0.1" enabled: true @@ -78,7 +78,7 @@ global: apiKey: "123456789abcdef0123456789abcedf012" - package: "oci://ghcr.io/redhat-developer/rhdh-plugin-export-overlays/backstage-community-plugin-sonarqube:bs_1.49.4__1.1.0" enabled: true - - package: ./dynamic-plugins/dist/red-hat-developer-hub-backstage-plugin-dynamic-home-page + - package: oci://ghcr.io/redhat-developer/rhdh-plugin-export-overlays/red-hat-developer-hub-backstage-plugin-dynamic-home-page:bs_1.49.4__1.13.1 enabled: true - package: "oci://ghcr.io/redhat-developer/rhdh-plugin-export-overlays/pagerduty-backstage-plugin:bs_1.49.4__0.18.0" enabled: false @@ -95,7 +95,7 @@ global: enabled: true - package: "oci://ghcr.io/redhat-developer/rhdh-plugin-export-overlays/roadiehq-scaffolder-backend-module-utils:bs_1.49.4__4.1.2" enabled: true - - package: ./dynamic-plugins/dist/backstage-community-plugin-scaffolder-backend-module-regex-dynamic + - package: oci://ghcr.io/redhat-developer/rhdh-plugin-export-overlays/backstage-community-plugin-scaffolder-backend-module-regex:bs_1.52.0__2.17.0 enabled: true - package: "oci://ghcr.io/redhat-developer/rhdh-plugin-export-overlays/backstage-community-plugin-scaffolder-backend-module-servicenow:bs_1.49.4__2.15.0" enabled: false @@ -139,9 +139,9 @@ global: enabled: true - package: "oci://ghcr.io/redhat-developer/rhdh-plugin-export-overlays/backstage-community-plugin-lighthouse:bs_1.49.4__0.20.0" enabled: true - - package: ./dynamic-plugins/dist/backstage-community-plugin-catalog-backend-module-scaffolder-relation-processor-dynamic + - package: oci://ghcr.io/redhat-developer/rhdh-plugin-export-overlays/backstage-community-plugin-catalog-backend-module-scaffolder-relation-processor:bs_1.52.0__2.15.0 enabled: true - - package: ./dynamic-plugins/dist/backstage-plugin-catalog-backend-module-msgraph-dynamic + - package: oci://ghcr.io/redhat-developer/rhdh-plugin-export-overlays/backstage-plugin-catalog-backend-module-msgraph:bs_1.52.0__0.10.3 enabled: true pluginConfig: catalog: @@ -160,7 +160,7 @@ global: seconds: 15 timeout: minutes: 15 - - package: ./dynamic-plugins/dist/backstage-plugin-catalog-backend-module-ldap-dynamic + - package: oci://ghcr.io/redhat-developer/rhdh-plugin-export-overlays/backstage-plugin-catalog-backend-module-ldap:bs_1.52.0__0.12.6 enabled: true pluginConfig: catalog: @@ -187,7 +187,7 @@ global: seconds: 15 timeout: minutes: 15 - - package: ./dynamic-plugins/dist/backstage-community-plugin-catalog-backend-module-pingidentity-dynamic + - package: oci://ghcr.io/redhat-developer/rhdh-plugin-export-overlays/backstage-community-plugin-catalog-backend-module-pingidentity:bs_1.52.0__0.13.0 enabled: true pluginConfig: catalog: diff --git a/.ci/pipelines/value_files/diff-values_showcase_AKS.yaml b/.ci/pipelines/value_files/diff-values_showcase_AKS.yaml index 50a8bff31e..e2759452f5 100644 --- a/.ci/pipelines/value_files/diff-values_showcase_AKS.yaml +++ b/.ci/pipelines/value_files/diff-values_showcase_AKS.yaml @@ -7,7 +7,7 @@ route: global: dynamic: plugins: - - package: ./dynamic-plugins/dist/backstage-community-plugin-catalog-backend-module-scaffolder-relation-processor-dynamic + - package: oci://ghcr.io/redhat-developer/rhdh-plugin-export-overlays/backstage-community-plugin-catalog-backend-module-scaffolder-relation-processor:bs_1.52.0__2.15.0 enabled: true upstream: backstage: diff --git a/.ci/pipelines/value_files/diff-values_showcase_EKS.yaml b/.ci/pipelines/value_files/diff-values_showcase_EKS.yaml index 2afde01696..0f6720f87c 100644 --- a/.ci/pipelines/value_files/diff-values_showcase_EKS.yaml +++ b/.ci/pipelines/value_files/diff-values_showcase_EKS.yaml @@ -9,7 +9,7 @@ global: host: $EKS_INSTANCE_DOMAIN_NAME dynamic: plugins: - - package: ./dynamic-plugins/dist/backstage-community-plugin-catalog-backend-module-scaffolder-relation-processor-dynamic + - package: oci://ghcr.io/redhat-developer/rhdh-plugin-export-overlays/backstage-community-plugin-catalog-backend-module-scaffolder-relation-processor:bs_1.52.0__2.15.0 enabled: true upstream: backstage: diff --git a/.ci/pipelines/value_files/diff-values_showcase_GKE.yaml b/.ci/pipelines/value_files/diff-values_showcase_GKE.yaml index 8d774e3fe4..73ab3fc8f5 100644 --- a/.ci/pipelines/value_files/diff-values_showcase_GKE.yaml +++ b/.ci/pipelines/value_files/diff-values_showcase_GKE.yaml @@ -7,19 +7,8 @@ route: global: dynamic: plugins: - # Disable plugins to save disk space on GKE - # These plugins correspond to tests that are ignored in showcase-k8s project - # See e2e-tests/playwright.config.ts SHOWCASE_K8S config - - # OCM - test ignored - # Test file: e2e-tests/playwright/e2e/plugins/ocm.spec.ts (currently doesn't exist) - - package: ./dynamic-plugins/dist/backstage-community-plugin-ocm-backend-dynamic - enabled: false - - package: ./dynamic-plugins/dist/backstage-community-plugin-ocm - enabled: false - # Scaffolder relation processor - keep enabled for K8s - - package: ./dynamic-plugins/dist/backstage-community-plugin-catalog-backend-module-scaffolder-relation-processor-dynamic + - package: oci://ghcr.io/redhat-developer/rhdh-plugin-export-overlays/backstage-community-plugin-catalog-backend-module-scaffolder-relation-processor:bs_1.52.0__2.15.0 enabled: true upstream: backstage: diff --git a/.ci/pipelines/value_files/values_showcase-rbac.yaml b/.ci/pipelines/value_files/values_showcase-rbac.yaml index 35902f028c..cb5b986aa9 100644 --- a/.ci/pipelines/value_files/values_showcase-rbac.yaml +++ b/.ci/pipelines/value_files/values_showcase-rbac.yaml @@ -4,21 +4,160 @@ global: image: registry: quay.io repository: rhdh/plugin-catalog-index - tag: "1.10" + tag: "1.11" dynamic: # -- Array of YAML files listing dynamic plugins to include with those listed in the `plugins` field. # Relative paths are resolved from the working directory of the initContainer that will install the plugins (`/opt/app-root/src`). - includes: - # -- List of dynamic plugins included inside the `rhdh-community/rhdh` container image, some of which are not enabled by default. - # This file ONLY works with the `rhdh-community/rhdh` container image. - - "dynamic-plugins.default.yaml" + # NOTE: dynamic-plugins.default.yaml from the catalog index is not included because the + # :1.11 / :next index references OCI images on registry.access.redhat.com that are not + # publicly accessible yet. All required plugins are listed explicitly below instead. - # -- List of dynamic plugins, possibly overriding the plugins listed in `includes` files. + # -- List of dynamic plugins. # Every item defines the plugin `package` as a [NPM package spec](https://docs.npmjs.com/cli/v10/using-npm/package-spec), # an optional `pluginConfig` with plugin-specific backstage configuration, and an optional `enabled` flag to enable/disable a plugin # listed in `includes` files. It also includes an `integrity` field that is used to verify the plugin package [integrity](https://w3c.github.io/webappsec-subresource-integrity/#integrity-metadata-description). plugins: - - package: ./dynamic-plugins/dist/backstage-plugin-catalog-backend-module-github-dynamic + # Core RHDH UI plugins — not available in :1.11 catalog index defaults, added explicitly + - package: "oci://ghcr.io/redhat-developer/rhdh-plugin-export-overlays/red-hat-developer-hub-backstage-plugin-dynamic-home-page:bs_1.49.4__1.13.1!red-hat-developer-hub-backstage-plugin-dynamic-home-page" + disabled: false + pluginConfig: + dynamicPlugins: + frontend: + red-hat-developer-hub.backstage-plugin-dynamic-home-page: + dynamicRoutes: + - importName: DynamicHomePage + path: / + mountPoints: + - importName: VisitListener + mountPoint: application/listener + - importName: SearchBar + mountPoint: home.page/cards + config: + id: searchbar + title: Search + - importName: QuickAccessCard + mountPoint: home.page/cards + config: + id: quickaccess-card + title: Quick Access Card + - importName: CatalogStarredEntitiesCard + mountPoint: home.page/cards + config: + id: catalog-starred-entities-card + title: Starred catalog entities + - importName: RecentlyVisitedCard + mountPoint: home.page/cards + config: + id: recently-visited-card + title: Recently visited + - importName: TopVisitedCard + mountPoint: home.page/cards + config: + id: top-visited-card + title: Top visited + translationResources: + - importName: homepageTranslations + ref: homepageTranslationRef + module: Alpha + - package: "oci://ghcr.io/redhat-developer/rhdh-plugin-export-overlays/red-hat-developer-hub-backstage-plugin-global-header:bs_1.49.4__1.21.6!red-hat-developer-hub-backstage-plugin-global-header" + disabled: false + pluginConfig: + app: + sidebar: + logo: false + search: false + settings: false + dynamicPlugins: + frontend: + default.main-menu-items: + menuItems: + default.admin: + icon: admin + textKey: menuItem.administration + title: Administration + default.create: + title: "" + red-hat-developer-hub.backstage-plugin-global-header: + translationResources: + - importName: globalHeaderTranslations + ref: globalHeaderTranslationRef + mountPoints: + - mountPoint: application/header + importName: GlobalHeader + config: + position: above-sidebar + - mountPoint: global.header/component + importName: CompanyLogo + config: + priority: 200 + props: + to: "/" + - mountPoint: global.header/component + importName: SearchComponent + config: + priority: 100 + - mountPoint: global.header/component + importName: Spacer + config: + priority: 99 + props: + growFactor: 0 + - mountPoint: global.header/component + importName: HeaderIconButton + config: + priority: 90 + props: + title: Self-service + titleKey: create.title + icon: add + to: create + - mountPoint: global.header/component + importName: StarredDropdown + config: + priority: 85 + - mountPoint: global.header/component + importName: ApplicationLauncherDropdown + config: + priority: 82 + - mountPoint: global.header/component + importName: HelpDropdown + config: + priority: 80 + - mountPoint: global.header/component + importName: NotificationButton + config: + priority: 70 + - mountPoint: global.header/component + importName: Divider + config: + priority: 50 + - mountPoint: global.header/component + importName: ProfileDropdown + config: + priority: 10 + - mountPoint: global.header/profile + importName: MenuItemLink + config: + priority: 100 + props: + title: Settings + titleKey: profile.settings + link: /settings + icon: manageAccounts + - mountPoint: global.header/profile + importName: MenuItemLink + config: + priority: 90 + props: + title: My profile + titleKey: profile.myProfile + type: myProfile + icon: account + - mountPoint: global.header/profile + importName: LogoutButton + config: + priority: 10 + - package: oci://ghcr.io/redhat-developer/rhdh-plugin-export-overlays/backstage-plugin-catalog-backend-module-github:bs_1.52.0__0.13.3 enabled: true pluginConfig: catalog: @@ -36,9 +175,9 @@ global: seconds: 15 - package: "oci://ghcr.io/redhat-developer/rhdh-plugin-export-overlays/roadiehq-backstage-plugin-github-pull-requests:bs_1.49.4__3.7.0" enabled: true - - package: ./dynamic-plugins/dist/backstage-community-plugin-catalog-backend-module-keycloak-dynamic + - package: oci://ghcr.io/redhat-developer/rhdh-plugin-export-overlays/backstage-community-plugin-catalog-backend-module-keycloak:bs_1.49.4__3.19.2 enabled: true - - package: ./dynamic-plugins/dist/backstage-community-plugin-rbac + - package: oci://ghcr.io/redhat-developer/rhdh-plugin-export-overlays/backstage-community-plugin-rbac:bs_1.52.0__1.55.1 enabled: true pluginConfig: dynamicPlugins: diff --git a/.ci/pipelines/value_files/values_showcase.yaml b/.ci/pipelines/value_files/values_showcase.yaml index 8704c69dcd..cddf0c38d8 100644 --- a/.ci/pipelines/value_files/values_showcase.yaml +++ b/.ci/pipelines/value_files/values_showcase.yaml @@ -4,23 +4,162 @@ global: image: registry: quay.io repository: rhdh/plugin-catalog-index - tag: "1.10" + tag: "1.11" dynamic: # -- Array of YAML files listing dynamic plugins to include with those listed in the `plugins` field. # Relative paths are resolved from the working directory of the initContainer that will install the plugins (`/opt/app-root/src`). - includes: - # -- List of dynamic plugins included inside the `rhdh-community/rhdh` container image, some of which are not enabled by default. - # This file ONLY works with the `rhdh-community/rhdh` container image. - - "dynamic-plugins.default.yaml" + # NOTE: dynamic-plugins.default.yaml from the catalog index is not included because the + # :1.11 / :next index references OCI images on registry.access.redhat.com that are not + # publicly accessible yet. All required plugins are listed explicitly below instead. - # -- List of dynamic plugins, possibly overriding the plugins listed in `includes` files. + # -- List of dynamic plugins. # Every item defines the plugin `package` as a [NPM package spec](https://docs.npmjs.com/cli/v10/using-npm/package-spec), # an optional `pluginConfig` with plugin-specific backstage configuration, and an optional `enabled` flag to enable/disable a plugin # listed in `includes` files. It also includes an `integrity` field that is used to verify the plugin package [integrity](https://w3c.github.io/webappsec-subresource-integrity/#integrity-metadata-description). plugins: - - package: ./dynamic-plugins/dist/backstage-plugin-scaffolder-backend-module-github-dynamic + # Core RHDH UI plugins — not available in :1.11 catalog index defaults, added explicitly + - package: "oci://ghcr.io/redhat-developer/rhdh-plugin-export-overlays/red-hat-developer-hub-backstage-plugin-dynamic-home-page:bs_1.49.4__1.13.1!red-hat-developer-hub-backstage-plugin-dynamic-home-page" + disabled: false + pluginConfig: + dynamicPlugins: + frontend: + red-hat-developer-hub.backstage-plugin-dynamic-home-page: + dynamicRoutes: + - importName: DynamicHomePage + path: / + mountPoints: + - importName: VisitListener + mountPoint: application/listener + - importName: SearchBar + mountPoint: home.page/cards + config: + id: searchbar + title: Search + - importName: QuickAccessCard + mountPoint: home.page/cards + config: + id: quickaccess-card + title: Quick Access Card + - importName: CatalogStarredEntitiesCard + mountPoint: home.page/cards + config: + id: catalog-starred-entities-card + title: Starred catalog entities + - importName: RecentlyVisitedCard + mountPoint: home.page/cards + config: + id: recently-visited-card + title: Recently visited + - importName: TopVisitedCard + mountPoint: home.page/cards + config: + id: top-visited-card + title: Top visited + translationResources: + - importName: homepageTranslations + ref: homepageTranslationRef + module: Alpha + - package: "oci://ghcr.io/redhat-developer/rhdh-plugin-export-overlays/red-hat-developer-hub-backstage-plugin-global-header:bs_1.49.4__1.21.6!red-hat-developer-hub-backstage-plugin-global-header" + disabled: false + pluginConfig: + app: + sidebar: + logo: false + search: false + settings: false + dynamicPlugins: + frontend: + default.main-menu-items: + menuItems: + default.admin: + icon: admin + textKey: menuItem.administration + title: Administration + default.create: + title: "" + red-hat-developer-hub.backstage-plugin-global-header: + translationResources: + - importName: globalHeaderTranslations + ref: globalHeaderTranslationRef + mountPoints: + - mountPoint: application/header + importName: GlobalHeader + config: + position: above-sidebar + - mountPoint: global.header/component + importName: CompanyLogo + config: + priority: 200 + props: + to: "/" + - mountPoint: global.header/component + importName: SearchComponent + config: + priority: 100 + - mountPoint: global.header/component + importName: Spacer + config: + priority: 99 + props: + growFactor: 0 + - mountPoint: global.header/component + importName: HeaderIconButton + config: + priority: 90 + props: + title: Self-service + titleKey: create.title + icon: add + to: create + - mountPoint: global.header/component + importName: StarredDropdown + config: + priority: 85 + - mountPoint: global.header/component + importName: ApplicationLauncherDropdown + config: + priority: 82 + - mountPoint: global.header/component + importName: HelpDropdown + config: + priority: 80 + - mountPoint: global.header/component + importName: NotificationButton + config: + priority: 70 + - mountPoint: global.header/component + importName: Divider + config: + priority: 50 + - mountPoint: global.header/component + importName: ProfileDropdown + config: + priority: 10 + - mountPoint: global.header/profile + importName: MenuItemLink + config: + priority: 100 + props: + title: Settings + titleKey: profile.settings + link: /settings + icon: manageAccounts + - mountPoint: global.header/profile + importName: MenuItemLink + config: + priority: 90 + props: + title: My profile + titleKey: profile.myProfile + type: myProfile + icon: account + - mountPoint: global.header/profile + importName: LogoutButton + config: + priority: 10 + - package: oci://ghcr.io/redhat-developer/rhdh-plugin-export-overlays/backstage-plugin-scaffolder-backend-module-github:bs_1.52.0__0.9.10 enabled: true - - package: ./dynamic-plugins/dist/backstage-plugin-catalog-backend-module-github-dynamic + - package: oci://ghcr.io/redhat-developer/rhdh-plugin-export-overlays/backstage-plugin-catalog-backend-module-github:bs_1.52.0__0.13.3 enabled: true - package: oci://ghcr.io/redhat-developer/rhdh-plugin-export-overlays/red-hat-developer-hub-backstage-plugin-application-provider-test:bs_1.45.3__0.6.0 pluginConfig: @@ -45,11 +184,9 @@ global: importName: LocationListener - package: "oci://ghcr.io/redhat-developer/rhdh-plugin-export-overlays/roadiehq-backstage-plugin-github-pull-requests:bs_1.49.4__3.7.0" enabled: true - - package: ./dynamic-plugins/dist/backstage-community-plugin-catalog-backend-module-keycloak-dynamic - enabled: true - - package: ./dynamic-plugins/dist/roadiehq-scaffolder-backend-module-http-request-dynamic + - package: oci://ghcr.io/redhat-developer/rhdh-plugin-export-overlays/backstage-community-plugin-catalog-backend-module-keycloak:bs_1.49.4__3.19.2 enabled: true - - package: ./dynamic-plugins/dist/backstage-community-plugin-catalog-backend-module-scaffolder-relation-processor-dynamic + - package: oci://ghcr.io/redhat-developer/rhdh-plugin-export-overlays/backstage-community-plugin-catalog-backend-module-scaffolder-relation-processor:bs_1.52.0__2.15.0 enabled: true - package: "@backstage-community/plugin-todo@0.2.42" enabled: true diff --git a/e2e-tests/playwright.config.ts b/e2e-tests/playwright.config.ts index 9f055740b8..840c73ba38 100644 --- a/e2e-tests/playwright.config.ts +++ b/e2e-tests/playwright.config.ts @@ -92,7 +92,6 @@ export default defineConfig({ dependencies: [PW_PROJECT.SMOKE_TEST], testIgnore: [ "**/playwright/seed.spec.ts", - "**/playwright/e2e/plugins/rbac/**/*.spec.ts", "**/playwright/e2e/**/*-rbac.spec.ts", "**/playwright/e2e/external-database/verify-tls-config-with-external-crunchy.spec.ts", "**/playwright/e2e/auth-providers/**/*.spec.ts", @@ -100,6 +99,8 @@ export default defineConfig({ "**/playwright/e2e/external-database/verify-tls-config-with-external-azure-db.spec.ts", "**/playwright/e2e/plugin-division-mode-schema/*.spec.ts", "**/playwright/e2e/configuration-test/config-map.spec.ts", + // Disabled: techdocs frontend plugin not available in :1.11 catalog index + "**/playwright/e2e/verify-redis-cache.spec.ts", ], }, { @@ -129,19 +130,19 @@ export default defineConfig({ testIgnore: [ "**/playwright/seed.spec.ts", "**/playwright/e2e/smoke-test.spec.ts", - "**/playwright/e2e/plugins/rbac/**/*.spec.ts", "**/playwright/e2e/**/*-rbac.spec.ts", "**/playwright/e2e/external-database/verify-tls-config-with-external-crunchy.spec.ts", "**/playwright/e2e/auth-providers/**/*.spec.ts", "**/playwright/e2e/plugins/scaffolder-backend-module-annotator/**/*.spec.ts", "**/playwright/e2e/plugins/scaffolder-relation-processor/**/*.spec.ts", - "**/playwright/e2e/plugins/ocm.spec.ts", "**/playwright/e2e/audit-log/**/*.spec.ts", "**/playwright/e2e/external-database/verify-tls-config-with-external-rds.spec.ts", "**/playwright/e2e/external-database/verify-tls-config-with-external-azure-db.spec.ts", "**/playwright/e2e/configuration-test/config-map.spec.ts", "**/playwright/e2e/github-happy-path.spec.ts", "**/playwright/e2e/plugin-division-mode-schema/*.spec.ts", + // Disabled: techdocs frontend plugin not available in :1.11 catalog index + "**/playwright/e2e/verify-redis-cache.spec.ts", ], }, { @@ -155,7 +156,6 @@ export default defineConfig({ dependencies: [PW_PROJECT.SMOKE_TEST], testIgnore: [ "**/playwright/seed.spec.ts", - "**/playwright/e2e/plugins/rbac/**/*.spec.ts", "**/playwright/e2e/**/*-rbac.spec.ts", "**/playwright/e2e/external-database/verify-tls-config-with-external-crunchy.spec.ts", "**/playwright/e2e/auth-providers/**/*.spec.ts", @@ -167,6 +167,8 @@ export default defineConfig({ "**/playwright/e2e/configuration-test/config-map.spec.ts", "**/playwright/e2e/github-happy-path.spec.ts", "**/playwright/e2e/plugin-division-mode-schema/*.spec.ts", + // Disabled: techdocs frontend plugin not available in :1.11 catalog index + "**/playwright/e2e/verify-redis-cache.spec.ts", ], }, { diff --git a/e2e-tests/playwright/e2e/plugins/http-request.spec.ts b/e2e-tests/playwright/e2e/plugins/http-request.spec.ts deleted file mode 100644 index dc2f35680b..0000000000 --- a/e2e-tests/playwright/e2e/plugins/http-request.spec.ts +++ /dev/null @@ -1,43 +0,0 @@ -import { test } from "@support/coverage/test"; - -import { CatalogImport } from "../../support/pages/catalog-import"; -import { ScaffolderFlowPage } from "../../support/pages/scaffolder-flow-page"; -import { SelfServicePage } from "../../support/pages/self-service-page"; -import { JOB_NAME_PATTERNS } from "../../utils/constants"; -import { skipIfJobName } from "../../utils/helper"; - -// https://github.com/RoadieHQ/roadie-backstage-plugins/tree/main/plugins/scaffolder-actions/scaffolder-backend-module-http-request -// Pre-req: Enable roadiehq-scaffolder-backend-module-http-request-dynamic plugin -// Pre-req: Enable janus-idp-backstage-plugin-quay plugin -test.describe("Testing scaffolder-backend-module-http-request to invoke an external request", () => { - test.skip( - () => skipIfJobName(JOB_NAME_PATTERNS.OSD_GCP), - "skipping due to RHDHBUGS-555 on OSD Env", - ); - let selfServicePage: SelfServicePage; - let scaffolderFlowPage: ScaffolderFlowPage; - let catalogImport: CatalogImport; - const template = "https://github.com/janus-qe/software-template/blob/main/test-http-request.yaml"; - - test.beforeAll(() => { - test.info().annotations.push({ - type: "component", - description: "plugins", - }); - }); - - test.beforeEach(({ guestPage }) => { - selfServicePage = new SelfServicePage(guestPage); - scaffolderFlowPage = new ScaffolderFlowPage(guestPage); - catalogImport = new CatalogImport(guestPage); - }); - - test("Create a software template using http-request plugin", async () => { - await selfServicePage.open(); - await selfServicePage.verifyTemplatesHeading(); - await selfServicePage.clickImportGitRepository(); - await catalogImport.registerExistingComponent(template, false); - - await scaffolderFlowPage.runHttpRequestTemplateFlow(); - }); -}); diff --git a/e2e-tests/playwright/utils/authentication-providers/rhdh-deployment/auth.ts b/e2e-tests/playwright/utils/authentication-providers/rhdh-deployment/auth.ts index 7a7a0e1d4b..0d4bf145b3 100644 --- a/e2e-tests/playwright/utils/authentication-providers/rhdh-deployment/auth.ts +++ b/e2e-tests/playwright/utils/authentication-providers/rhdh-deployment/auth.ts @@ -18,7 +18,7 @@ export function enableOIDCLoginWithIngestion(actions: AuthConfigActions): void { expect(process.env.RHBK_CLIENT_SECRET).toBeDefined(); actions.setDynamicPluginEnabled( - "./dynamic-plugins/dist/backstage-community-plugin-catalog-backend-module-keycloak-dynamic", + "oci://ghcr.io/redhat-developer/rhdh-plugin-export-overlays/backstage-community-plugin-catalog-backend-module-keycloak:bs_1.49.4__3.19.2", true, ); actions.setAppConfigProperty("catalog.providers", { @@ -77,7 +77,7 @@ export function enableLDAPLoginWithIngestion(actions: AuthConfigActions): void { expect(process.env.RHBK_LDAP_CLIENT_SECRET).toBeDefined(); actions.setDynamicPluginEnabled( - "./dynamic-plugins/dist/backstage-plugin-catalog-backend-module-ldap-dynamic", + "oci://ghcr.io/redhat-developer/rhdh-plugin-export-overlays/backstage-plugin-catalog-backend-module-ldap:bs_1.52.0__0.12.6", true, ); actions.setAppConfigProperty("catalog.providers", { @@ -134,7 +134,7 @@ export function enableMicrosoftLoginWithIngestion(actions: AuthConfigActions): v expect(process.env.AUTH_PROVIDERS_AZURE_TENANT_ID).toBeDefined(); actions.setDynamicPluginEnabled( - "./dynamic-plugins/dist/backstage-plugin-catalog-backend-module-msgraph-dynamic", + "oci://ghcr.io/redhat-developer/rhdh-plugin-export-overlays/backstage-plugin-catalog-backend-module-msgraph:bs_1.52.0__0.10.3", true, ); actions.setAppConfigProperty("catalog.providers", { @@ -174,10 +174,7 @@ export function enableMicrosoftLoginWithIngestion(actions: AuthConfigActions): v actions.setAppConfigProperty("signInPage", "microsoft"); } -export function enableGithubLoginWithIngestion( - actions: AuthConfigActions, - isRunningLocal: boolean, -): void { +export function enableGithubLoginWithIngestion(actions: AuthConfigActions): void { console.log("Enabling Github login with ingestion..."); expect(process.env.AUTH_PROVIDERS_GH_ORG_NAME).toBeDefined(); expect(process.env.AUTH_PROVIDERS_GH_ORG_CLIENT_SECRET).toBeDefined(); @@ -187,15 +184,14 @@ export function enableGithubLoginWithIngestion( expect(process.env.AUTH_PROVIDERS_GH_ORG_WEBHOOK_SECRET).toBeDefined(); actions.setDynamicPluginEnabled( - "./dynamic-plugins/dist/backstage-plugin-catalog-backend-module-github-org-dynamic", + "oci://ghcr.io/redhat-developer/rhdh-plugin-export-overlays/backstage-plugin-catalog-backend-module-github-org:bs_1.52.0__0.3.23", true, ); - const transformerPluginPath = isRunningLocal - ? "./dynamic-plugins/dist/@internal/backstage-plugin-catalog-backend-module-github-org-transformer-dynamic" - : "oci://quay.io/rh-ee-jhe/catalog-github-org-transformer:v0.3.0!internal-backstage-plugin-catalog-backend-module-github-org-transformer"; - - actions.setDynamicPluginEnabled(transformerPluginPath, true); + actions.setDynamicPluginEnabled( + "oci://quay.io/rh-ee-jhe/catalog-github-org-transformer:v0.3.0!internal-backstage-plugin-catalog-backend-module-github-org-transformer", + true, + ); actions.setAppConfigProperty("catalog.providers", { githubOrg: [ @@ -248,7 +244,7 @@ export function enableGitlabLoginWithIngestion(actions: AuthConfigActions): void expect(process.env.AUTH_PROVIDERS_GITLAB_PARENT_ORG).toBeDefined(); actions.setDynamicPluginEnabled( - "./dynamic-plugins/dist/backstage-plugin-catalog-backend-module-gitlab-org-dynamic", + "oci://ghcr.io/redhat-developer/rhdh-plugin-export-overlays/backstage-plugin-catalog-backend-module-gitlab-org:bs_1.52.0__0.2.22", true, ); diff --git a/e2e-tests/playwright/utils/authentication-providers/rhdh-deployment/index.ts b/e2e-tests/playwright/utils/authentication-providers/rhdh-deployment/index.ts index 432e3be1a2..9882df923b 100644 --- a/e2e-tests/playwright/utils/authentication-providers/rhdh-deployment/index.ts +++ b/e2e-tests/playwright/utils/authentication-providers/rhdh-deployment/index.ts @@ -421,7 +421,7 @@ class RHDHDeployment implements RHDHDeploymentState { } enableGithubLoginWithIngestion(): Promise { - enableGithubLoginWithIngestion(this, this.isRunningLocal); + enableGithubLoginWithIngestion(this); return Promise.resolve(this); } diff --git a/e2e-tests/playwright/utils/authentication-providers/yamls/dynamic-plugins-config.yaml b/e2e-tests/playwright/utils/authentication-providers/yamls/dynamic-plugins-config.yaml index b10d37c54f..40720690d2 100644 --- a/e2e-tests/playwright/utils/authentication-providers/yamls/dynamic-plugins-config.yaml +++ b/e2e-tests/playwright/utils/authentication-providers/yamls/dynamic-plugins-config.yaml @@ -1,11 +1,11 @@ plugins: - - package: ./dynamic-plugins/dist/backstage-community-plugin-catalog-backend-module-keycloak-dynamic + - package: oci://ghcr.io/redhat-developer/rhdh-plugin-export-overlays/backstage-community-plugin-catalog-backend-module-keycloak:bs_1.49.4__3.19.2 enabled: false - - package: ./dynamic-plugins/dist/backstage-plugin-catalog-backend-module-github-org-dynamic + - package: oci://ghcr.io/redhat-developer/rhdh-plugin-export-overlays/backstage-plugin-catalog-backend-module-github-org:bs_1.52.0__0.3.23 enabled: false - package: oci://quay.io/rh-ee-jhe/catalog-github-org-transformer:v0.3.0!internal-backstage-plugin-catalog-backend-module-github-org-transformer enabled: false - - package: ./dynamic-plugins/dist/backstage-plugin-catalog-backend-module-msgraph-dynamic + - package: oci://ghcr.io/redhat-developer/rhdh-plugin-export-overlays/backstage-plugin-catalog-backend-module-msgraph:bs_1.52.0__0.10.3 enabled: false - - package: ./dynamic-plugins/dist/backstage-community-plugin-rbac + - package: oci://ghcr.io/redhat-developer/rhdh-plugin-export-overlays/backstage-community-plugin-rbac:bs_1.52.0__1.55.1 enabled: false diff --git a/scripts/rhdh-openshift-setup/values.yaml b/scripts/rhdh-openshift-setup/values.yaml index 5e49219dc1..b91385f057 100644 --- a/scripts/rhdh-openshift-setup/values.yaml +++ b/scripts/rhdh-openshift-setup/values.yaml @@ -3,7 +3,7 @@ global: # -- Array of YAML files listing dynamic plugins to include with those listed in the `plugins` field. # Relative paths are resolved from the working directory of the initContainer that will install the plugins (`/opt/app-root/src`). includes: - # -- List of dynamic plugin wrappers included in, or side-loaded as oci artifacts to, the `rhdh` container image, some of which are not enabled by default. + # -- List of dynamic plugins loaded as OCI artifacts, some of which are not enabled by default. - 'dynamic-plugins.default.yaml' # -- List of dynamic plugins, possibly overriding the plugins listed in `includes` files. @@ -11,9 +11,9 @@ global: # an optional `pluginConfig` with plugin-specific backstage configuration, and an optional `enabled` flag to enable/disable a plugin # listed in `includes` files. It also includes an `integrity` field that is used to verify the plugin package [integrity](https://w3c.github.io/webappsec-subresource-integrity/#integrity-metadata-description). plugins: - - package: ./dynamic-plugins/dist/red-hat-developer-hub-backstage-plugin-bulk-import-backend-dynamic + - package: oci://ghcr.io/redhat-developer/rhdh-plugin-export-overlays/red-hat-developer-hub-backstage-plugin-bulk-import-backend:bs_1.49.4__7.3.5 enabled: true - - package: ./dynamic-plugins/dist/red-hat-developer-hub-backstage-plugin-bulk-import + - package: oci://ghcr.io/redhat-developer/rhdh-plugin-export-overlays/red-hat-developer-hub-backstage-plugin-bulk-import:bs_1.49.4__7.3.5 enabled: true pluginConfig: dynamicPlugins: @@ -28,7 +28,7 @@ global: menuItem: icon: bulkImportIcon text: Bulk import - # - package: ./dynamic-plugins/dist/backstage-plugin-kubernetes-backend-dynamic + # - package: oci://ghcr.io/redhat-developer/rhdh-plugin-export-overlays/backstage-plugin-kubernetes-backend:bs_1.52.0__0.21.5 # enabled: true # pluginConfig: # kubernetes: @@ -55,7 +55,7 @@ global: # authProvider: 'serviceAccount' # skipTLSVerify: true # serviceAccountToken: ${K8S_CLUSTER_TOKEN} - # - package: ./dynamic-plugins/dist/backstage-plugin-kubernetes + # - package: oci://ghcr.io/redhat-developer/rhdh-plugin-export-overlays/backstage-plugin-kubernetes:bs_1.52.0__0.12.20 # enabled: true # pluginConfig: # dynamicPlugins: @@ -71,7 +71,7 @@ global: # anyOf: # - hasAnnotation: backstage.io/kubernetes-id # - hasAnnotation: backstage.io/kubernetes-namespace - # - package: ./dynamic-plugins/dist/backstage-community-plugin-topology + # - package: oci://ghcr.io/redhat-developer/rhdh-plugin-export-overlays/backstage-community-plugin-topology:bs_1.52.0__2.15.0 # enabled: true # pluginConfig: # dynamicPlugins: @@ -88,7 +88,7 @@ global: # anyOf: # - hasAnnotation: backstage.io/kubernetes-id # - hasAnnotation: backstage.io/kubernetes-namespace - - package: ./dynamic-plugins/dist/backstage-community-plugin-tech-radar + - package: oci://ghcr.io/redhat-developer/rhdh-plugin-export-overlays/backstage-community-plugin-tech-radar:bs_1.52.0__1.20.0 enabled: true pluginConfig: dynamicPlugins: @@ -109,7 +109,7 @@ global: props: width: 1500 height: 800 - - package: ./dynamic-plugins/dist/backstage-community-plugin-rbac + - package: oci://ghcr.io/redhat-developer/rhdh-plugin-export-overlays/backstage-community-plugin-rbac:bs_1.52.0__1.55.1 enabled: true pluginConfig: dynamicPlugins: @@ -127,7 +127,7 @@ global: dynamicRoutes: - path: /admin/rbac importName: RbacPage - # - package: ./dynamic-plugins/dist/backstage-community-plugin-catalog-backend-module-keycloak-dynamic + # - package: oci://ghcr.io/redhat-developer/rhdh-plugin-export-overlays/backstage-community-plugin-catalog-backend-module-keycloak:bs_1.49.4__3.19.2 # enabled: true # pluginConfig: # catalog: