Uploaded image for project: 'Red Hat Developer Hub Bugs'
  1. Red Hat Developer Hub Bugs
  2. RHDHBUGS-2055

Incorrect configuration for orchestrator plugins in operator upstream and downstream docs

XMLWordPrintable

    • RHDH Documentation 3280

      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.  **

              rhn-support-jmagak Judith Amondi Magak
              yfirst Yona First
              Votes:
              0 Vote for this issue
              Watchers:
              1 Start watching this issue

                Created:
                Updated:
                Resolved: