build(*): Attempt to diagnose dockerhub action issue

This commit is contained in:
Josh Creek
2026-02-25 23:56:47 +00:00
parent 3615c38794
commit 129041368b
3 changed files with 60 additions and 42 deletions
@@ -0,0 +1,59 @@
name: Docker Hub Description
on:
push:
branches:
- main
paths:
- README.md
- .github/workflows/dockerhub-description.yml
jobs:
dockerhub-description:
runs-on: ubuntu-latest
permissions:
contents: read
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Preflight Docker Hub repository access
env:
DOCKERHUB_USERNAME: ${{ secrets.DOCKERHUB_USERNAME }}
DOCKERHUB_PASSWORD: ${{ secrets.DOCKERHUB_PASSWORD }}
DOCKERHUB_REPOSITORY: jcreek23/open-network-diagram
run: |
set -euo pipefail
if [ -z "${DOCKERHUB_USERNAME}" ] || [ -z "${DOCKERHUB_PASSWORD}" ]; then
echo "Missing DOCKERHUB_USERNAME or DOCKERHUB_PASSWORD secret."
exit 1
fi
LOGIN_RESPONSE="$(curl -fsS -X POST \
-H 'Content-Type: application/json' \
-d "{\"username\":\"${DOCKERHUB_USERNAME}\",\"password\":\"${DOCKERHUB_PASSWORD}\"}" \
https://hub.docker.com/v2/users/login/)"
TOKEN="$(printf '%s' "${LOGIN_RESPONSE}" | ruby -rjson -e 'input = STDIN.read; data = JSON.parse(input); puts data.fetch("token", "")')"
if [ -z "${TOKEN}" ]; then
echo "Docker Hub login succeeded but token was missing."
exit 1
fi
curl -fsS \
-H "Authorization: JWT ${TOKEN}" \
"https://hub.docker.com/v2/repositories/${DOCKERHUB_REPOSITORY}/" >/dev/null
echo "Docker Hub preflight access check passed for ${DOCKERHUB_REPOSITORY}."
- name: Update Docker Hub repository overview
uses: peter-evans/dockerhub-description@v5
with:
username: ${{ secrets.DOCKERHUB_USERNAME }}
password: ${{ secrets.DOCKERHUB_PASSWORD }}
repository: jcreek23/open-network-diagram
readme-filepath: ./README.md
enable-url-completion: true
-41
View File
@@ -13,27 +13,6 @@ concurrency:
cancel-in-progress: false
jobs:
changed-files:
runs-on: ubuntu-latest
permissions:
contents: read
outputs:
readme: ${{ steps.filter.outputs.readme }}
steps:
- name: Checkout
uses: actions/checkout@v4
with:
fetch-depth: 0
- name: Detect changed files
id: filter
uses: dorny/paths-filter@v3
with:
filters: |
readme:
- README.md
release:
runs-on: ubuntu-latest
permissions:
@@ -110,23 +89,3 @@ jobs:
labels: ${{ steps.meta.outputs.labels }}
cache-from: type=gha
cache-to: type=gha,mode=max
dockerhub-overview:
needs: changed-files
if: needs.changed-files.outputs.readme == 'true'
runs-on: ubuntu-latest
permissions:
contents: read
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Update Docker Hub repository overview
uses: peter-evans/dockerhub-description@v5
with:
username: ${{ secrets.DOCKERHUB_USERNAME }}
password: ${{ secrets.DOCKERHUB_TOKEN }}
repository: ${{ env.IMAGE_NAME }}
readme-filepath: ./README.md
enable-url-completion: true