diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 7f9bd4d..d5618b6 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -7,6 +7,9 @@ jobs: runs-on: ubuntu-latest steps: - uses: actions/checkout@v2 + - name: Add commit id into version + if: ${{ !startsWith(github.ref, 'refs/tags/') }} + run: SHA=$(git rev-parse --short HEAD) && sed -i 's/\(v[0-9]\.[0-9]\.[0-9]\)/\1-'"$SHA"'/' src/version.h - name: Build run: docker run --rm -v $GITHUB_WORKSPACE:/root/workdir multiarch/alpine:x86-latest-stable /bin/sh -c "apk add bash git nodejs npm && cd /root/workdir && chmod +x scripts/build.alpine.release.sh && bash scripts/build.alpine.release.sh" - name: Upload @@ -29,6 +32,9 @@ jobs: runs-on: ubuntu-latest steps: - uses: actions/checkout@v2 + - name: Add commit id into version + if: ${{ !startsWith(github.ref, 'refs/tags/') }} + run: SHA=$(git rev-parse --short HEAD) && sed -i 's/\(v[0-9]\.[0-9]\.[0-9]\)/\1-'"$SHA"'/' src/version.h - name: Build run: docker run -v $GITHUB_WORKSPACE:/root/workdir multiarch/alpine:amd64-latest-stable /bin/sh -c "apk add bash git nodejs npm && cd /root/workdir && chmod +x scripts/build.alpine.release.sh && bash scripts/build.alpine.release.sh" - name: Upload @@ -51,6 +57,9 @@ jobs: runs-on: macos-latest steps: - uses: actions/checkout@v2 + - name: Add commit id into version + if: ${{ !startsWith(github.ref, 'refs/tags/') }} + run: SHA=$(git rev-parse --short HEAD) && sed -i -e 's/\(v[0-9]\.[0-9]\.[0-9]\)/\1-'"$SHA"'/' src/version.h - name: Build run: bash scripts/build.macos.release.sh - name: Upload @@ -85,6 +94,9 @@ jobs: install: base-devel git mingw-w64-x86_64-gcc mingw-w64-x86_64-cmake mingw-w64-x86_64-libevent mingw-w64-x86_64-pcre2 patch msystem: MINGW64 path-type: inherit + - name: Add commit id into version + if: ${{ !startsWith(github.ref, 'refs/tags/') }} + run: SHA=$(git rev-parse --short HEAD) && sed -i 's/\(v[0-9]\.[0-9]\.[0-9]\)/\1-'"$SHA"'/' src/version.h - name: Build run: bash scripts/build.windows.release.sh - name: Upload @@ -119,6 +131,9 @@ jobs: install: base-devel git mingw-w64-i686-gcc mingw-w64-i686-cmake mingw-w64-i686-libevent mingw-w64-i686-pcre2 patch msystem: MINGW32 path-type: inherit + - name: Add commit id into version + if: ${{ !startsWith(github.ref, 'refs/tags/') }} + run: SHA=$(git rev-parse --short HEAD) && sed -i 's/\(v[0-9]\.[0-9]\.[0-9]\)/\1-'"$SHA"'/' src/version.h - name: Build run: bash scripts/build.windows.release.sh - name: Upload diff --git a/.github/workflows/docker.yml b/.github/workflows/docker.yml index 469623d..8181861 100644 --- a/.github/workflows/docker.yml +++ b/.github/workflows/docker.yml @@ -29,7 +29,8 @@ jobs: - name: Docker buildx image and push on master branch if: github.ref == 'refs/heads/master' run: | - docker buildx build --output "type=image,push=true" --platform=linux/amd64,linux/arm/v7,linux/arm64,linux/386 --tag tindy2013/subconverter:latest scripts/ + SHA=$(git rev-parse --short HEAD) + docker buildx build --build-arg SHA="$SHA" --output "type=image,push=true" --platform=linux/amd64,linux/arm/v7,linux/arm64,linux/386 --tag tindy2013/subconverter:latest scripts/ - name: Replace tag without `v` if: startsWith(github.ref, 'refs/tags/') diff --git a/scripts/Dockerfile b/scripts/Dockerfile index 37eb88b..d7c8042 100644 --- a/scripts/Dockerfile +++ b/scripts/Dockerfile @@ -1,5 +1,6 @@ FROM alpine:3.13 LABEL maintainer "tindy.it@gmail.com" +ARG SHA="" # build minimized WORKDIR / @@ -33,6 +34,7 @@ RUN apk add --no-cache --virtual .build-tools git g++ build-base linux-headers c cd .. && \ git clone https://github.com/tindy2013/subconverter --depth=1 && \ cd subconverter && \ + [ -n "$SHA" ] && sed -i 's/\(v[0-9]\.[0-9]\.[0-9]\)/\1-'"$SHA"'/' src/version.h;\ cmake -DCMAKE_BUILD_TYPE=Release . && \ make -j4 && \ mv subconverter /usr/bin && \