-
Bug
-
Resolution: Unresolved
-
Blocker
-
1.9.0
-
None
-
2
-
False
-
-
False
-
-
Known Issue
-
Proposed
-
-
-
RHDH Install 3288
Description of problem:
As a workaround to RHDHBUGS-2767 (until 1.9.1 is out), we suggested users to manually override the catalog index image in their backstage CR or Helm values file to switch to registry.access.redhat.com instead of registry.redhat.io:
As confirmed in this Slack message, the suggested workaround used to work. But it now seems that it no longer works, as discussed in this other thread.
We need to investigate why the logs are still refering to registry.redhat.io and why we now have such signature errors.
Prerequisites (if any, like setup, operators/versions):
RHDH Operator 1.9.0
Steps to Reproduce
- Create or Update CR with the CATALOG_INDEX_IMAGE env var
apiVersion: rhdh.redhat.com/v1alpha5 kind: Backstage metadata: name: developer-hub namespace: my-ns spec: application: extraEnvs: envs: - containers: - install-dynamic-plugins name: CATALOG_INDEX_IMAGE value: 'registry.access.redhat.com/rhdh/plugin-catalog-index@sha256:1026e4c63ed82cbe546dae87d516e2db71b590a1b59ee62c73674a535e826070' route: enabled: true database: enableLocalDb: true monitoring: enabled: true
- Wait a few minutes until reconciliation
Actual results:
Init container fails:
======= Created lock file: /dynamic-plugins-root/install-dynamic-plugins.lock
======= Extracting catalog index from registry.access.redhat.com/rhdh/plugin-catalog-index@sha256:1026e4c63ed82cbe546dae87d516e2db71b590a1b59ee62c73674a535e826070
==> Checking if image exists in registry.access.redhat.com/rhdh/...
==> Image found in registry.access.redhat.com/rhdh/
==> Copying catalog index image to local filesystem
Traceback (most recent call last):
File "/opt/app-root/src/install-dynamic-plugins.py", line 162, in run_command
return subprocess.run(
^^^^^^^^^^^^^^^
File "/usr/lib64/python3.11/subprocess.py", line 571, in run
raise CalledProcessError(retcode, process.args,
subprocess.CalledProcessError: Command '['/usr/bin/skopeo', 'copy', '--override-os=linux', '--override-arch=amd64', 'docker://registry.access.redhat.com/rhdh/plugin-catalog-index@sha256:1026e4c63ed82cbe546dae87d516e2db71b590a1b59ee62c73674a535e826070', 'dir:/tmp/tmprjq51tg8/catalog-index-oci']' returned non-zero exit status 1.
During handling of the above exception, another exception occurred:
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 1150, in main
catalog_index_default_file = extract_catalog_index(catalog_index_image, dynamic_plugins_root, catalog_entities_parent_dir)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/opt/app-root/src/install-dynamic-plugins.py", line 1093, in extract_catalog_index
run_command(
File "/opt/app-root/src/install-dynamic-plugins.py", line 179, in run_command
raise InstallException(msg)
InstallException: Failed to download catalog index image registry.access.redhat.com/rhdh/plugin-catalog-index@sha256:1026e4c63ed82cbe546dae87d516e2db71b590a1b59ee62c73674a535e826070: command failed with exit code 1
command: /usr/bin/skopeo copy --override-os=linux --override-arch=amd64 docker://registry.access.redhat.com/rhdh/plugin-catalog-index@sha256:1026e4c63ed82cbe546dae87d516e2db71b590a1b59ee62c73674a535e826070 dir:/tmp/tmprjq51tg8/catalog-index-oci
stderr: time="2026-03-10T11:57:37Z" level=fatal msg="copying system image from manifest list: Source image rejected: None of the signatures were accepted, reasons: Signature for identity \"registry.redhat.io/rhdh/plugin-catalog-index:1.9\" is not accepted; No data; Signature for identity \"registry.redhat.io/rhdh/plugin-catalog-index:1.9.0\" is not accepted; No data; Signature for identity \"registry.redhat.io/rhdh/plugin-catalog-index:1.9.0-1772498940\" is not accepted; No data"
======= Cleaning up temporary catalog index directory
======= Removed lock file: /dynamic-plugins-root/install-dynamic-plugins.lock
Expected results:
Should work
Reproducibility (Always/Intermittent/Only Once):
Always