-
Bug
-
Resolution: Done
-
Normal
-
1.7.0
-
None
Description of problem:
In both the upstream and downstream docs for installing the orchestrator plugins in RHDH 1.7, the following example is used:
includes: - dynamic-plugins.default.yaml plugins: - package: "@redhat/backstage-plugin-orchestrator@1.7.1" disabled: false - package: "@redhat/backstage-plugin-orchestrator-backend-dynamic@1.7.1" disabled: false dependencies: - ref: sonataflow - package: "@redhat/backstage-plugin-scaffolder-backend-module-orchestrator-dynamic@1.7.1" disabled: false - package: "@redhat/backstage-plugin-orchestrator-form-widgets@1.7.1" disabled: false
This is incomplete. It is missing the pluginConfig additions, and causes the backstage pod to go into CLBO:
ForwardedError: Plugin 'orchestrator' startup failed; caused by Error: Missing required config value at 'orchestrator.dataIndexService.url' in 'env' at /opt/app-root/src/node_modules/@backstage/backend-app-api/dist/wiring/BackendInitializer.cjs.js:304:21 at process.processTicksAndRejections (node:internal/process/task_queues:105:5) at async /opt/app-root/src/node_modules/@backstage/backend-app-api/dist/wiring/BackendInitializer.cjs.js:303:13 at async Promise.allSettled (index 14) ... 2 lines matching cause stack trace ... at async BackstageBackend.start (/opt/app-root/src/node_modules/@backstage/backend-app-api/dist/wiring/BackstageBackend.cjs.js:19:5) { cause: Error: Missing required config value at 'orchestrator.dataIndexService.url' in 'env'
The following is an example of the correct configmap with the pluginConfigs added:
dynamic-plugins.yaml: | includes: - dynamic-plugins.default.yaml plugins: - package: "@redhat/backstage-plugin-orchestrator@1.7.1" disabled: false 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 - package: "@redhat/backstage-plugin-orchestrator-backend-dynamic@1.7.1" disabled: false pluginConfig: orchestrator: dataIndexService: url: http://sonataflow-platform-data-index-service dependencies: - ref: sonataflow - package: "@redhat/backstage-plugin-scaffolder-backend-module-orchestrator-dynamic@1.7.1" disabled: false pluginConfig: orchestrator: dataIndexService: url: http://sonataflow-platform-data-index-service - package: "@redhat/backstage-plugin-orchestrator-form-widgets@1.7.1" disabled: false pluginConfig: dynamicPlugins: frontend: red-hat-developer-hub.backstage-plugin-orchestrator-form-widgets: { }
Prerequisites (if any, like setup, operators/versions):
Testing RHDH 1.7.0 disconnected deployment with the orchestrator 1.7.1 plugins.
Steps to Reproduce
1. Deploy RHDH 1.7.0 in a disconnected environment according to the docs (disconnected env not so relevant here but adding all env details).
2. Set up the orchestrator pre-reqs (Sonataflow, OSL) including mirroring to the local registry.
3. Create Backstage CR
4. Enable the orchestrator plugins according to the docs by using a custom configmap.
Actual results:
See above, backstage pod is stuck in CLBO due to missing config.
Expected results:
Docs should have correct plugin config information.
This should be changed in both the upstream and downstream docs linked above, as well as in the example given here
Reproducibility (Always/Intermittent/Only Once):
Always
Additional note:
The orchestrator plugins are included by default (and set to disabled: true) with the correct config in the default created
backstage-dynamic-plugins-<release-name>
configmap. The user can also be directed to set disabled: false in this CM, instead of creating a custom one. **