diff --git a/.github/workflows/docker-image.yml b/.github/workflows/docker-image.yml index d6f40341..8312fea9 100644 --- a/.github/workflows/docker-image.yml +++ b/.github/workflows/docker-image.yml @@ -43,18 +43,30 @@ jobs: REPO_NAME=${{ env.IMAGE_NAME }} echo "LOWER_CASE_REPO_NAME=${REPO_NAME,,}" >> $GITHUB_ENV - - name: Get release version - id: get_release_version + - name: Get release version or branch name + id: get_version_or_branch run: | - RELEASE_VERSION=${{ github.event.release.tag_name }} - echo "RELEASE_VERSION=${RELEASE_VERSION}" >> $GITHUB_ENV + if [ "${{ github.event_name }}" == "release" ]; then + RELEASE_VERSION=${{ github.event.release.tag_name }} + if [ -z "$RELEASE_VERSION" ]; then + echo "RELEASE_VERSION is empty. Please ensure a release tag is provided." + exit 1 + fi + echo "VERSION=${RELEASE_VERSION}" >> $GITHUB_ENV + elif [ "${{ github.event_name }}" == "workflow_dispatch" ]; then + BRANCH_NAME=${{ github.ref_name }} + echo "VERSION=${BRANCH_NAME}" >> $GITHUB_ENV + else + echo "Unsupported event: ${{ github.event_name }}" + exit 1 + fi - name: Build and push Docker image uses: docker/build-push-action@v3 with: context: . push: true - tags: ${{ env.REGISTRY }}/${{ env.LOWER_CASE_REPO_NAME }}:${{ env.RELEASE_VERSION }}, ${{ steps.meta.outputs.tags }} + tags: ${{ env.REGISTRY }}/${{ env.LOWER_CASE_REPO_NAME }}:${{ env.VERSION }}, ${{ steps.meta.outputs.tags }} labels: ${{ steps.meta.outputs.labels }} cache-from: type=gha cache-to: type=gha,mode=max \ No newline at end of file