Skip to content

[release-1.9] docs(orchestrator): document workaround used for starting the Orchestrator in 1.9 [RHDHBUGS-2779] - #184

Merged
rm3l merged 2 commits into
redhat-developer:release-1.9from
openshift-cherrypick-robot:cherry-pick-183-to-release-1.9
Mar 19, 2026
Merged

[release-1.9] docs(orchestrator): document workaround used for starting the Orchestrator in 1.9 [RHDHBUGS-2779]#184
rm3l merged 2 commits into
redhat-developer:release-1.9from
openshift-cherrypick-robot:cherry-pick-183-to-release-1.9

Conversation

@openshift-cherrypick-robot

Copy link
Copy Markdown
Contributor

This is an automated cherry-pick of #183

/assign rm3l

rm3l and others added 2 commits March 19, 2026 15:53
…rator until the issue is fixed [RHDHBUGS-2779]
Co-authored-by: Armel Soro <armel@rm3l.org>
@rhdh-qodo-merge

Copy link
Copy Markdown
Contributor

PR Reviewer Guide 🔍

Here are some key observations to aid the review process:

⏱️ Estimated effort to review: 1 🔵⚪⚪⚪⚪
🔒 No security concerns identified
⚡ Recommended focus areas for review

Doc Accuracy

The instruction to “Copy the plugins … directly into your override file” should be validated to ensure it matches how the override is merged (e.g., that duplicating plugins: is the intended approach and won’t conflict with any existing plugins: entries users may already have in their override). Consider explicitly stating whether users should merge into an existing plugins: list vs replacing it.

Before you begin, ensure to add the orchestrator plugins to your `configs/dynamic-plugins/dynamic-plugins.override.yaml` to enable them within RHDH.
Copy the [plugins](./configs/dynamic-plugins/dynamic-plugins.yaml#L5-L21)
from `orchestrator/configs/dynamic-plugins/dynamic-plugins.yaml` directly into your override file. Example:

```yaml
includes:
  - dynamic-plugins.default.yaml

# Add the Orchestrator plugins directly, and add any other plugins you want to install, including local ones.
plugins:
  - 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
    pluginConfig:
      orchestrator:
        dataIndexService:
          url: http://sonataflow:8899
  - package: 'oci://registry.access.redhat.com/rhdh/red-hat-developer-hub-backstage-plugin-scaffolder-backend-module-orchestrator:{{inherit}}'
    disabled: false
    pluginConfig:
      orchestrator:
        dataIndexService:
          url: http://sonataflow:8899
  - package: 'oci://registry.access.redhat.com/rhdh/red-hat-developer-hub-backstage-plugin-orchestrator-form-widgets:{{inherit}}'
    disabled: false

</details>

<details><summary><a href='https://github.com/redhat-developer/rhdh-local/pull/184/files#diff-ea8fd782400b3844725e6452541b7b5366630c010e22356379d8ea6f7bbf6596R7-R8'><strong>Link Robustness</strong></a>

The README links to a specific line range in `dynamic-plugins.yaml`; line-number anchors can become stale as the file evolves. Consider linking to the file without line anchors or to a stable section/heading if available, to reduce future documentation drift.
</summary>

```markdown
Copy the [plugins](./configs/dynamic-plugins/dynamic-plugins.yaml#L5-L21)
from `orchestrator/configs/dynamic-plugins/dynamic-plugins.yaml` directly into your override file. Example:
📚 Focus areas based on broader codebase context

Missing Config

The new Orchestrator enablement example adds plugin packages (and some pluginConfig) but omits other required configuration called out elsewhere, such as ensuring a secret containing BACKEND_SECRET is created and wired via the Backstage CR extraEnvs. Also, the backend package example in other docs includes explicit dependency handling for sonataflow, which is not reflected here—validate the Orchestrator starts without that dependency configuration in this setup. (Ref 1)

Before you begin, ensure to add the orchestrator plugins to your `configs/dynamic-plugins/dynamic-plugins.override.yaml` to enable them within RHDH.
Copy the [plugins](./configs/dynamic-plugins/dynamic-plugins.yaml#L5-L21)
from `orchestrator/configs/dynamic-plugins/dynamic-plugins.yaml` directly into your override file. Example:

```yaml
includes:
  - dynamic-plugins.default.yaml

# Add the Orchestrator plugins directly, and add any other plugins you want to install, including local ones.
plugins:
  - 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
    pluginConfig:
      orchestrator:
        dataIndexService:
          url: http://sonataflow:8899
  - package: 'oci://registry.access.redhat.com/rhdh/red-hat-developer-hub-backstage-plugin-scaffolder-backend-module-orchestrator:{{inherit}}'
    disabled: false
    pluginConfig:
      orchestrator:
        dataIndexService:
          url: http://sonataflow:8899
  - package: 'oci://registry.access.redhat.com/rhdh/red-hat-developer-hub-backstage-plugin-orchestrator-form-widgets:{{inherit}}'
    disabled: false

Reference reasoning: The existing orchestrator documentation describes enabling the same set of dynamic plugins while also requiring a BACKEND_SECRET secret to be provided via extraEnvs, and it shows dependency configuration for the orchestrator backend. Aligning this README with those documented requirements reduces the risk of users enabling plugins but ending up with a non-working Orchestrator runtime due to missing prerequisites.

📄 References
  1. redhat-developer/rhdh-operator/docs/orchestrator.md [69-101]
  2. redhat-developer/rhdh-operator/docs/orchestrator.md [26-28]
  3. redhat-developer/rhdh-operator/docs/orchestrator.md [42-45]
  4. redhat-developer/rhdh-operator/docs/orchestrator.md [23-25]
  5. redhat-developer/rhdh-operator/docs/orchestrator.md [150-163]
  6. redhat-developer/rhdh-operator/docs/orchestrator.md [16-22]
  7. redhat-developer/rhdh-operator/docs/orchestrator.md [63-65]
  8. redhat-developer/rhdh-operator/docs/orchestrator.md [66-68]

@rhdh-qodo-merge rhdh-qodo-merge Bot added the documentation Improvements or additions to documentation label Mar 19, 2026
@rhdh-qodo-merge

Copy link
Copy Markdown
Contributor

PR Type

Documentation


Description

  • Document workaround for Orchestrator plugin configuration issue

  • Replace includes directive with direct plugin definitions in override file

  • Add warning about known issue RHDHBUGS-2779 preventing Orchestrator startup

  • Provide complete example configuration with all required orchestrator plugins


File Walkthrough

Relevant files
Documentation
README.md
Document orchestrator plugin configuration workaround       

orchestrator/README.md

  • Clarified plugin configuration approach by replacing includes
    directive with direct plugin definitions
  • Added complete example showing all four orchestrator plugins with
    proper configuration
  • Included warning about known issue RHDHBUGS-2779 that prevents
    Orchestrator startup when using includes
  • Improved documentation clarity with better explanation of setup
    requirements
+25/-7   

@rhdh-qodo-merge

Copy link
Copy Markdown
Contributor

PR Code Suggestions ✨

No code suggestions found for the PR.

@rm3l
rm3l merged commit e268eb7 into redhat-developer:release-1.9 Mar 19, 2026
97 of 98 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

documentation Improvements or additions to documentation Review effort 1/5

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants