Skip to content

Setup: Quay.io robot + QUAY_USERNAME / QUAY_TOKEN repo secrets #8

Open

Description

@durandom

Parent: #5

Why

Upstream publishes the supported catalog-index image to Quay, not GHCR:

Tier Upstream destination Auth
Plugin images + community catalog-index ghcr.io/redhat-developer/rhdh-plugin-export-overlays/... GITHUB_TOKEN
Supported catalog-index quay.io/rhdh-community/plugin-catalog-index QUAY_USERNAME + QUAY_TOKEN

This fork must not push to quay.io/rhdh-community (that org is Red Hat’s). We need our own Quay namespace, same pattern.

Not required for the workspaces/todo GHCR slice. Community plugins (todo) go to GHCR. Do this when we want supported-catalog parity.

Account to create

  1. A quay.io user (or log in with GitHub/Red Hat SSO).
  2. A Quay organization for Parasol, e.g. rhdh-parasol (create if it does not exist).
  3. A robot account in that org, e.g. rhdh-parasol+github_actions.
  4. A public repository: plugin-catalog-index
    full ref: quay.io/rhdh-parasol/plugin-catalog-index
  5. Grant the robot write on that repository.

Robot token UI: Quay org → Robot Accounts → github_actions → generate token.

Tokens to write where

GitHub repo → Settings → Secrets and variables → Actions → Repository secrets:

Secret name Value Used by
QUAY_USERNAME robot name, e.g. rhdh-parasol+github_actions .github/workflows/generate-catalog-index.yaml (publish-supported)
QUAY_TOKEN robot token same

Do not put these in GitHub Variables (they are credentials). Do not commit them.

After the secrets exist, a small follow-up PR should:

  • set SUPPORTED_CATALOG_INDEX: quay.io/rhdh-parasol/plugin-catalog-index
  • re-enable the supported catalog generate/publish jobs (currently skipped on this fork)

Acceptance

  • Quay org + robot + public plugin-catalog-index repo exist
  • QUAY_USERNAME and QUAY_TOKEN are set on rhdh-parasol/rhdh-plugin-export-overlays
  • Follow-up PR retargets SUPPORTED_CATALOG_INDEX (not this issue’s code)
  • A catalog-index workflow run pushes quay.io/rhdh-parasol/plugin-catalog-index:<tag>

Activity

  1. fullsend-ai-triage commented on Sep 1, 2026

    @fullsend-ai-triage

    🤖 Finished Triage · ✅ Success · Started 12:59 PM UTC · Completed 1:03 PM UTC

    Commit: 6d28288 · View workflow run →

    Runtime: claude · Model: opus → claude-opus-4-6 · Effort: high · Cost: $0.64

  2. fullsend-ai-triage commented on Sep 1, 2026

    @fullsend-ai-triage

    This is a manual infrastructure task — no code changes are in scope. The work involves creating Quay.io resources and setting GitHub repository secrets, which must be done by a repository admin through the Quay.io and GitHub web UIs.

    Verification

    Once the Quay org, robot account, and GitHub secrets are in place, verify by triggering the generate-catalog-index.yaml workflow's publish-supported job and confirming the image lands at quay.io/rhdh-parasol/plugin-catalog-index:<tag>. The image should be publicly pullable without authentication.

    Related issues

    The follow-up PR to retarget SUPPORTED_CATALOG_INDEX and re-enable the publish jobs is explicitly out of scope for this issue.


    Next steps:

    • /fs-code — agent creates a PR to implement this issue
    • /fs-code <your instruction> — agent implements with your specific guidance
  3. durandom commented on Sep 3, 2026

    @durandom
    Author

    #5 is complete without Quay. The fork community catalog-index is on GHCR (ghcr.io/rhdh-parasol/rhdh-plugin-export-overlays/plugin-catalog-index). The supported/Quay job is skipped until QUAY_USERNAME / QUAY_TOKEN exist. Leaving this open as the later supported-index slice.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions