diff --git a/.gitea/workflows/docker-image.yml b/.gitea/workflows/docker-image.yml index b916af3..7163690 100644 --- a/.gitea/workflows/docker-image.yml +++ b/.gitea/workflows/docker-image.yml @@ -20,23 +20,23 @@ jobs: uses: actions/checkout@v4 - name: Build image - run: docker build -t "${IMAGE_NAME}:${GITHUB_SHA}" . + run: docker build -t "${IMAGE_NAME}:${{ gitea.sha }}" . - name: Tag latest image - run: docker tag "${IMAGE_NAME}:${GITHUB_SHA}" "${IMAGE_NAME}:latest" + run: docker tag "${IMAGE_NAME}:${{ gitea.sha }}" "${IMAGE_NAME}:latest" - - name: Log in to registry - if: ${{ env.REGISTRY != '' && env.REGISTRY_USERNAME != '' && env.REGISTRY_PASSWORD != '' }} - run: echo "${REGISTRY_PASSWORD}" | docker login "${REGISTRY}" -u "${REGISTRY_USERNAME}" --password-stdin - - - name: Push commit image - if: ${{ env.REGISTRY != '' && env.REGISTRY_USERNAME != '' && env.REGISTRY_PASSWORD != '' }} + - name: Log in and push image run: | - docker tag "${IMAGE_NAME}:${GITHUB_SHA}" "${REGISTRY}/${IMAGE_NAME}:${GITHUB_SHA}" - docker push "${REGISTRY}/${IMAGE_NAME}:${GITHUB_SHA}" + if [ -z "${REGISTRY}" ] || [ -z "${REGISTRY_USERNAME}" ] || [ -z "${REGISTRY_PASSWORD}" ]; then + echo "Registry secrets are not fully configured. Skipping registry login and push." + echo "Expected secrets: REGISTRY_URL, REGISTRY_USERNAME, REGISTRY_PASSWORD" + exit 0 + fi - - name: Push latest image - if: ${{ env.REGISTRY != '' && env.REGISTRY_USERNAME != '' && env.REGISTRY_PASSWORD != '' }} - run: | + echo "${REGISTRY_PASSWORD}" | docker login "${REGISTRY}" -u "${REGISTRY_USERNAME}" --password-stdin + + docker tag "${IMAGE_NAME}:${{ gitea.sha }}" "${REGISTRY}/${IMAGE_NAME}:${{ gitea.sha }}" docker tag "${IMAGE_NAME}:latest" "${REGISTRY}/${IMAGE_NAME}:latest" + + docker push "${REGISTRY}/${IMAGE_NAME}:${{ gitea.sha }}" docker push "${REGISTRY}/${IMAGE_NAME}:latest" diff --git a/README.md b/README.md index e86978c..9915509 100644 --- a/README.md +++ b/README.md @@ -92,9 +92,9 @@ It runs on pushes to `main` and on manual workflow dispatch. The workflow always builds the Docker image. If these secrets are configured in Gitea, it also logs in and pushes the image to your registry: -- `GITEA_REGISTRY_URL` -- `GITEA_REGISTRY_USERNAME` -- `GITEA_REGISTRY_PASSWORD` +- `REGISTRY_URL` +- `REGISTRY_USERNAME` +- `REGISTRY_PASSWORD` Published tags: