Skip to content

ci: Use a dedicated token for the Docker Hub description - #19

Merged
ruxwez merged 1 commit into
mainfrom
ci/dockerhub-description-token
Oct 25, 2026
Merged

ruxwez merged 1 commit into
mainfrom
ci/dockerhub-description-token

Conversation

@ruxwez

@ruxwez ruxwez commented Oct 25, 2026

Copy link
Copy Markdown
Owner

Summary

The Docker Hub description sync added in #18 failed with Forbidden. Login works, but the PATCH to the repository page is rejected. DOCKER_PERSONAL_KEY has the Read & Write scope, which is enough to push images. Editing the repository page needs Read, Write, Delete.

Instead of widening the token every build job uses, this workflow now reads its own secret, DOCKERHUB_DESCRIPTION_TOKEN. That way the build jobs never hold a token that can delete images. If the secret is missing, the job fails with an explicit message instead of a bare Forbidden.

Required setup

  1. Create a Docker Hub access token with the Read, Write, Delete scope.
  2. Store it as the DOCKERHUB_DESCRIPTION_TOKEN repository secret.

Testing

actionlint passes. After merging, the workflow runs on main and will fail at "Check token" until the secret exists. Once the secret is set, re-run it with workflow_dispatch.

🤖 Generated with Claude Code

https://claude.ai/code/session_01QTN7At86i5TYDmozENSNv8

Updating the description failed with "Forbidden": DOCKER_PERSONAL_KEY
only has the "Read & Write" scope, which is enough to push images but
not to edit the repository page, which needs "Read, Write, Delete".

Use a separate DOCKERHUB_DESCRIPTION_TOKEN secret so the build jobs
keep a token that can't delete anything, and fail with an explicit
message when the secret is missing.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01QTN7At86i5TYDmozENSNv8
@ruxwez
ruxwez merged commit 5839d82 into main Oct 25, 2026
14 checks passed
@ruxwez
ruxwez deleted the ci/dockerhub-description-token branch October 25, 2026 18:23
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