From 4be46094451b7af61caaf955ecdb7ea095caf1af Mon Sep 17 00:00:00 2001 From: Thomas Waldmann Date: Sun, 2 Nov 2025 18:45:14 +0100 Subject: [PATCH] CI: run also for tag pushes Simplifies tag-based binary building and attestation. --- .github/workflows/ci.yml | 42 +++++++--------------------------------- 1 file changed, 7 insertions(+), 35 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index d149d875b..cc8dbdbab 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -5,17 +5,8 @@ name: CI on: push: branches: [ master ] - paths: - - '**.py' - - '**.pyx' - - '**.c' - - '**.h' - - '**.yml' - - '**.toml' - - '**.cfg' - - '**.ini' - - 'requirements.d/*' - - '!docs/**' + tags: + - '2.*' pull_request: branches: [ master ] paths: @@ -106,25 +97,6 @@ jobs: fetch-depth: 0 fetch-tags: true - - name: Detect if commit is tagged - id: detect_tag - run: | - tag="$(git describe --exact-match --tags HEAD 2>/dev/null || true)" - # If HEAD is a merge commit, the PR head is usually the second parent (HEAD^2). - if [ -z "$tag" ] && git rev-parse -q --verify HEAD^2 >/dev/null 2>&1; then - tag="$(git describe --exact-match --tags HEAD^2 2>/dev/null || true)" - fi - echo "Found tag: ${tag}" - echo "tagged=$tag" >> "$GITHUB_OUTPUT" - - - name: Check out exact tag - if: ${{ steps.detect_tag.outputs.tagged }} - uses: actions/checkout@v4 - with: - ref: ${{ steps.detect_tag.outputs.tagged }} - fetch-depth: 0 - fetch-tags: true - - name: Set up Python ${{ matrix.python-version }} uses: actions/setup-python@v5 with: @@ -240,14 +212,14 @@ jobs: env_vars: OS, python - name: Build Borg fat binaries (${{ matrix.binary }}) - if: ${{ matrix.binary && steps.detect_tag.outputs.tagged }} + if: ${{ matrix.binary && startsWith(github.ref, 'refs/tags/') }} run: | pip install 'pyinstaller==6.14.2' mkdir -p dist/binary pyinstaller --clean --distpath=dist/binary scripts/borg.exe.spec - name: Smoke-test the built binary (${{ matrix.binary }}) - if: ${{ matrix.binary && steps.detect_tag.outputs.tagged }} + if: ${{ matrix.binary && startsWith(github.ref, 'refs/tags/') }} run: | pushd dist/binary echo "single-file binary" @@ -260,7 +232,7 @@ jobs: popd - name: Prepare binaries (${{ matrix.binary }}) - if: ${{ matrix.binary && steps.detect_tag.outputs.tagged }} + if: ${{ matrix.binary && startsWith(github.ref, 'refs/tags/') }} run: | mkdir -p artifacts if [ -f dist/binary/borg.exe ]; then @@ -273,13 +245,13 @@ jobs: ls -l artifacts/ - name: Attest binaries provenance (${{ matrix.binary }}) - if: ${{ matrix.binary && steps.detect_tag.outputs.tagged }} + if: ${{ matrix.binary && startsWith(github.ref, 'refs/tags/') }} uses: actions/attest-build-provenance@v3 with: subject-path: 'artifacts/*' - name: Upload binaries (${{ matrix.binary }}) - if: ${{ matrix.binary && steps.detect_tag.outputs.tagged }} + if: ${{ matrix.binary && startsWith(github.ref, 'refs/tags/') }} uses: actions/upload-artifact@v4 with: name: ${{ matrix.binary }}