Skip to content

Sync README to Docker Hub overview on publish - #10

Merged
Lucifix merged 1 commit into
mainfrom
feature/dockerhub-description
Sep 15, 2026
Merged

Lucifix merged 1 commit into
mainfrom
feature/dockerhub-description

Conversation

@Lucifix

@Lucifix Lucifix commented Sep 15, 2026

Copy link
Copy Markdown
Owner

What does this change?

The Docker Hub repository shows "No overview available". This PR adds a peter-evans/dockerhub-description@v5 step at the end of the merge job. On each publish from main it pushes README.md as the Docker Hub overview and sets the short description to the README tagline.

  • Main only (github.ref == 'refs/heads/main'), so a release tag or a manual run from another ref can't overwrite the overview with a different README.
  • Only when the Docker Hub secrets are set, the same condition the mirror step uses.
  • Sparse checkout of README.md: the merge job never checked out the repo before, because it only needs the image digests.
  • enable-url-completion: true turns relative markdown links (docker-compose.yml, LICENSE, CONTRIBUTING.md, …) into full GitHub URLs, since Docker Hub can't resolve relative paths.
  • README screenshots: the three <img src> values now use full raw.githubusercontent.com URLs. The action's URL rewriting only handles markdown syntax, not HTML <img> tags, so relative paths would show as broken images on Docker Hub. The new URLs work on GitHub too; I checked that all three load.

Reviewer notes

  • Token scope: the action's docs say the Docker Hub token needs Read, Write, Delete access. If DOCKERHUB_TOKEN is Read & Write only, image mirroring still works but this step will fail with a 403. In that case, create a new token with that scope and update the secret.
  • The repository name comes from the secret and repo name (DOCKERHUB_USERNAME/model-workshop-manager), the same way the mirror step builds it.
  • Sizes: the README is about 12.2 KB (Docker Hub allows 25 KB) and the short description is 90 characters (limit 100).
  • I parsed the workflow YAML locally. The step itself only runs after merge to main.

Related issue

Follow-up to #8 / #9.

Checklist

  • Ran npm run lint:fix and npm run fmt at the repo root (fmt:check passes)
  • Added/updated backend tests for behavior changes (if applicable): n/a, CI/docs only
  • npm run typecheck and npm run build pass: n/a, no app code changed
  • Followed existing conventions (comments explain why not what)

Screenshots

n/a

The Docker Hub repo showed "No overview available". Add a
peter-evans/dockerhub-description step to the merge job (main only, when Hub
secrets are set) that pushes README.md and a short description.

Screenshot <img> tags now use absolute raw.githubusercontent.com URLs: the
action's url completion only rewrites markdown links/images, so relative HTML
image paths would render broken on Docker Hub.
@Lucifix
Lucifix merged commit ca2a2d3 into main Sep 15, 2026
6 checks passed
@Lucifix
Lucifix deleted the feature/dockerhub-description branch September 15, 2026 18:35
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