name: "publish docker image" description: "Tag and push docker image to GCP artifact registry" inputs: image_name: required: true image_local_tag: required: false default: "latest" image_remote_tag: required: false default: "" repository_location: required: false default: "europe-docker.pkg.dev/puzzle-and-play/docker" tag_commit: required: false default: true runs: using: composite steps: - name: "publish docker image" env: IMAGE_LOCAL_NAME: "${{ inputs.image_name }}" IMAGE_LOCAL_TAG: "${{ inputs.image_local_tag }}" IMAGE_REMOTE_NAME: "${{ inputs.repository_location }}/${{ inputs.image_name }}" IMAGE_REMOTE_TAG: "${{ inputs.image_remote_tag }}" TAG_COMMIT: "${{ inputs.tag_commit }}" run: | : ${IMAGE_REMOTE_TAG:="${{ github.ref_name }}-${{ github.run_number }}"} echo "image: $IMAGE_REMOTE_NAME:$IMAGE_REMOTE_TAG" docker tag \ "$IMAGE_LOCAL_NAME:$IMAGE_LOCAL_TAG" \ "$IMAGE_REMOTE_NAME:$IMAGE_REMOTE_TAG" docker push "$IMAGE_REMOTE_NAME:$IMAGE_REMOTE_TAG" if [[ "$TAG_COMMIT" == "true" ]]; then TAG_NAME="image-$IMAGE_REMOTE_TAG" echo "tagging commit with $TAG_NAME" git tag -f "$TAG_NAME" git push -f origin $TAG_NAME fi