Skip to content
Merged

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

82 changes: 42 additions & 40 deletions bundle/rhdh/manifests/rhdh-default-config_v1_configmap.yaml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

58 changes: 8 additions & 50 deletions config/profile/rhdh/default-config/dynamic-plugins.yaml
Comment thread
OpinionatedHeron marked this conversation as resolved.
Original file line number Diff line number Diff line change
Expand Up @@ -29,55 +29,13 @@ data:
includes:
- dynamic-plugins.default.yaml
plugins:
- disabled: true
package: "@redhat/backstage-plugin-orchestrator@1.8.2"
integrity: sha512-rnUA6iZ2JVAyASfwS4P9HeFmpqCgH6FQouzzg4s6lCPAsYUFvu6tifJ3df5lThXPUTJ2cDvvQgamU+4DiHP2jw==
pluginConfig:
dynamicPlugins:
frontend:
red-hat-developer-hub.backstage-plugin-orchestrator:
appIcons:
- importName: OrchestratorIcon
name: orchestratorIcon
dynamicRoutes:
- importName: OrchestratorPage
menuItem:
icon: orchestratorIcon
text: Orchestrator
path: /orchestrator
entityTabs:
- path: /workflows
title: Workflows
mountPoint: entity.page.workflows
mountPoints:
- mountPoint: entity.page.workflows/cards
importName: OrchestratorCatalogTab
config:
layout:
gridColumn: '1 / -1'
if:
anyOf:
- IsOrchestratorCatalogTabAvailable
- disabled: true
package: "@redhat/backstage-plugin-orchestrator-backend-dynamic@1.8.2"
integrity: sha512-6G0YguzCM5nCDpOrIGJpLTXVMr6EBdIVqSXtsLH9RvBH25RTuFpfJ7q6eEp26DqveaiqUCfBpJ51smdjcsEzFQ==
pluginConfig:
orchestrator:
dataIndexService:
url: http://sonataflow-platform-data-index-service
- package: 'oci://registry.access.redhat.com/rhdh/red-hat-developer-hub-backstage-plugin-orchestrator:{{inherit}}'
disabled: true
- package: 'oci://registry.access.redhat.com/rhdh/red-hat-developer-hub-backstage-plugin-orchestrator-backend:{{inherit}}'
disabled: true
dependencies:
- ref: sonataflow
- disabled: true
package: "@redhat/backstage-plugin-scaffolder-backend-module-orchestrator-dynamic@1.8.2"
integrity: sha512-N2hCn9RI/QVEoK56FAkGkSDbvfQCOIzVsJTwDX0kf//npO++2crRSJpB1Lr/m2UtYxfaXZX53p8sPcK3g8yWkQ==
pluginConfig:
orchestrator:
dataIndexService:
url: http://sonataflow-platform-data-index-service
- disabled: true
package: "@redhat/backstage-plugin-orchestrator-form-widgets@1.8.2"
integrity: sha512-Pe0dn3g+YTK3jbl36E8nt4zdyH/3w+MWgRyFWPc2B0eV4/L/aRfRC4KxcktmHPdamRGXTIaXL6cFae8TZl8Htw==
pluginConfig:
dynamicPlugins:
frontend:
red-hat-developer-hub.backstage-plugin-orchestrator-form-widgets: { }
- package: 'oci://registry.access.redhat.com/rhdh/red-hat-developer-hub-backstage-plugin-scaffolder-backend-module-orchestrator:{{inherit}}'
disabled: true
- package: 'oci://registry.access.redhat.com/rhdh/red-hat-developer-hub-backstage-plugin-orchestrator-form-widgets:{{inherit}}'
disabled: true
82 changes: 42 additions & 40 deletions dist/rhdh/install.yaml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

20 changes: 10 additions & 10 deletions docs/orchestrator.md
Original file line number Diff line number Diff line change
Expand Up @@ -80,16 +80,16 @@ To enable the orchestrator plugin, you should refer the dynamic plugins ConfigMa
includes:
- dynamic-plugins.default.yaml
plugins:
- package: "@redhat/backstage-plugin-orchestrator@1.8.2"
disabled: false
- package: "@redhat/backstage-plugin-orchestrator-backend-dynamic@1.8.2"
disabled: false
dependencies:
- ref: sonataflow
- package: "@redhat/backstage-plugin-scaffolder-backend-module-orchestrator-dynamic@1.8.2"
disabled: false
- package: "@redhat/backstage-plugin-orchestrator-form-widgets@1.8.2"
disabled: false
- package: 'oci://registry.access.redhat.com/rhdh/red-hat-developer-hub-backstage-plugin-orchestrator:{{inherit}}'
disabled: false
- package: 'oci://registry.access.redhat.com/rhdh/red-hat-developer-hub-backstage-plugin-orchestrator-backend:{{inherit}}'
disabled: false
dependencies:
- ref: sonataflow
- package: 'oci://registry.access.redhat.com/rhdh/red-hat-developer-hub-backstage-plugin-scaffolder-backend-module-orchestrator:{{inherit}}'
disabled: false
- package: 'oci://registry.access.redhat.com/rhdh/red-hat-developer-hub-backstage-plugin-orchestrator-form-widgets:{{inherit}}'
disabled: false
Comment on lines -83 to +92
Copy link
Copy Markdown
Member

@rm3l rm3l Feb 7, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM, but I think this would need to be documented as a known issue or breaking change in 1.9.0 (affecting only Operator users).
In 1.8, Operator users needed to explicitly use the @redhat/* NPM refs in their dynamic-plugins config in order to deploy the Orchestrator flavor, and now they would need to explicitly switch to the OCI refs, otherwise RHDH will fail to start IMO. So it will break Operator users that have existing Orchestrator-flavored instances of RHDH.

Copy link
Copy Markdown
Member

@rm3l rm3l Feb 8, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I quickly tested an upgrade from 1.8 to this PR branch, and the init container failed to start until I manually update my dynamic-plugins config, which confirms this upgrade issue.

[...]

======= Skipping disabled dynamic plugin oci://registry.access.redhat.com/rhdh/red-hat-developer-hub-backstage-plugin-orchestrator@sha256:7355b244d463187b11174b091b10235167ffc6fbd9466ec3cff0a8b5b04d6e98!red-hat-developer-hub-backstage-plugin-orchestrator

======= Skipping disabled dynamic plugin oci://registry.access.redhat.com/rhdh/red-hat-developer-hub-backstage-plugin-scaffolder-backend-module-orchestrator@sha256:6a138dd4c6bb7b98d7af58657395fc3ef3b96768276a2d65d9a7ef5fda52f2b5!red-hat-developer-hub-backstage-plugin-scaffolder-backend-module-orchestrator

======= Installing dynamic plugin @redhat/backstage-plugin-orchestrator@1.8.2
Traceback (most recent call last):
  File "/opt/app-root/src/install-dynamic-plugins.py", line 1284, in <module>
    main()
  File "/opt/app-root/src/install-dynamic-plugins.py", line 1269, in main
    _, plugin_config = install_plugin(plugin, plugin_path_by_hash, dynamic_plugins_root, skip_integrity_check)
                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/opt/app-root/src/install-dynamic-plugins.py", line 917, in install_plugin
    plugin_path = installer.install(plugin, plugin_path_by_hash)
                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/opt/app-root/src/install-dynamic-plugins.py", line 810, in install
    raise InstallException(f"No integrity hash provided for Package {package}")
InstallException: No integrity hash provided for Package @redhat/backstage-plugin-orchestrator@1.8.2

======= Cleaning up temporary catalog index directory
======= Removed lock file: /dynamic-plugins-root/install-dynamic-plugins.lock

```

See [example](/examples/orchestrator.yaml) for a complete configuration of the orchestrator plugin.
Expand Down
Loading