diff --git a/.gitea/workflows/ci.yaml b/.gitea/workflows/ci.yaml index 1618625..80f73e6 100644 --- a/.gitea/workflows/ci.yaml +++ b/.gitea/workflows/ci.yaml @@ -54,6 +54,43 @@ jobs: SHORT_SHA=$(git rev-parse --short HEAD) echo "short_sha=${SHORT_SHA}" >> $GITHUB_OUTPUT + - name: Pre-verify Docker, Registry, and Credentials + run: | + echo "=== Docker Daemon Check ===" + if ! docker version &>/dev/null; then + echo "❌ FAILED: Docker daemon not accessible" + exit 1 + fi + echo "✓ Docker daemon is running" + docker version --format "Engine: {{.Server.Version}}" + echo "" + echo "=== Registry Credentials Check ===" + if [ -z "${REGISTRY_USER}" ] || [ -z "${REGISTRY_TOKEN}" ]; then + echo "❌ FAILED: FORGEJO_REGISTRY_USER or FORGEJO_REGISTRY_TOKEN not set" + exit 1 + fi + echo "✓ Registry credentials are set" + echo "" + echo "=== Registry Login Test ===" + if ! echo "${REGISTRY_TOKEN}" | docker login "${REGISTRY}" --username "${REGISTRY_USER}" --password-stdin &>/dev/null; then + echo "❌ FAILED: Registry login failed - credentials may be invalid" + exit 1 + fi + echo "✓ Registry login successful" + docker logout "${REGISTRY}" &>/dev/null || true + echo "" + echo "=== Dockerfile Check ===" + if [ ! -f Dockerfile ]; then + echo "❌ FAILED: Dockerfile not found" + exit 1 + fi + echo "✓ Dockerfile exists" + echo "" + echo "=== All pre-checks passed ===" + env: + REGISTRY_USER: ${{ secrets.FORGEJO_REGISTRY_USER }} + REGISTRY_TOKEN: ${{ secrets.FORGEJO_REGISTRY_TOKEN }} + - name: Registry login run: | echo "${REGISTRY_TOKEN}" | docker login "${REGISTRY}" \