Skip to content

feat: use {{inherit}} for DPDY plugins in nightly mode#97

Closed
subhashkhileri wants to merge 1 commit into
redhat-developer:mainfrom
subhashkhileri:feat/nightly-inherit-dpdy
Closed

feat: use {{inherit}} for DPDY plugins in nightly mode#97
subhashkhileri wants to merge 1 commit into
redhat-developer:mainfrom
subhashkhileri:feat/nightly-inherit-dpdy

Conversation

@subhashkhileri
Copy link
Copy Markdown
Member

@subhashkhileri subhashkhileri commented May 5, 2026

Summary

  • In nightly mode, plugins listed in RHDH's default.packages.yaml (DPDY) now use the {{inherit}} tag so RHDH resolves the exact RC version from its built-in dynamic-plugins.default.yaml
  • Non-DPDY OCI plugins receive full metadata config injection (appConfigExamples) since they are not covered by RHDH defaults
  • Registry is preserved from metadata's dynamicArtifact so the runtime key matches the DPDY entry (registry.access.redhat.com, ghcr.io, etc.)

Changes

  • fetchDefaultPackages() — fetches DPDY package list from the rhdh repo's default.packages.yaml using RELEASE_BRANCH_NAME
  • resolvePluginPackages() — DPDY OCI plugins resolve to {{inherit}} refs; non-DPDY OCI plugins use metadata refs
  • selectMetadataForInjection() — new helper to determine which plugins get config injection in nightly mode (only non-DPDY OCI)
  • processPluginsForDeployment() — parallelized metadata loading and DPDY fetch with Promise.all; accepts optional dpdyPackages parameter for testing
  • 72 tests covering nightly mode resolution, {{inherit}} generation, config injection, and edge cases
  • Docs updated: resolution reference, changelog, environment variables, config files, troubleshooting, CI pipeline guide

Test plan

  • All 72 unit tests pass (npm test)
  • Prettier and ESLint clean
  • Run overlay nightly E2E against this branch to verify {{inherit}} resolution end-to-end

RHIDP-13402

Assisted-by: Claude Code

subhashkhileri added a commit to subhashkhileri/rhdh-plugin-export-overlays that referenced this pull request May 5, 2026
Hardcodes E2E_TEST_UTILS_GIT_REF to test the {{inherit}} nightly mode
changes from redhat-developer/rhdh-e2e-test-utils#97 end-to-end.

RHIDP-13402
@subhashkhileri subhashkhileri force-pushed the feat/nightly-inherit-dpdy branch from 9bca6c7 to 99d1f33 Compare May 5, 2026 11:50
… OCI in nightly mode

In nightly mode, plugins present in the RHDH default packages (DPDY) that
have OCI metadata now use the `{{inherit}}` tag so the runtime resolves the
exact version shipped in the RHDH RC image. Config injection is skipped for
these plugins since RHDH provides their defaults via the built-in DPDY.

Non-DPDY OCI plugins (not in default.packages.yaml) continue to use the
full OCI ref from metadata and receive appConfigExamples injection, since
they are not covered by RHDH's built-in defaults.

- Add `fetchDefaultPackages()` to fetch default.packages.yaml from the rhdh
  repo at the branch specified by RELEASE_BRANCH_NAME (required in CI,
  defaults to main for local dev)
- Resolve DPDY OCI plugins to `oci://<registry>/<name>:{{inherit}}` in
  nightly mode, preserving the registry from metadata
- Skip appConfigExamples injection for DPDY plugins in nightly mode
- Add RHDH_SKIP_PLUGIN_METADATA_INJECTION support (ignored in CI)
- Add isNightlyJob() export for detection logic
- Add nightly-specific test suite (plugin-metadata.nightly.test.ts)
- Document resolution rules and DPDY interaction

Assisted-by: Claude Code
Co-Authored-By: Claude Code <noreply@anthropic.com>
@subhashkhileri subhashkhileri force-pushed the feat/nightly-inherit-dpdy branch from 99d1f33 to 101f349 Compare May 11, 2026 10:37
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant