diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 3cfdbe3..7ff0bee 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -14,7 +14,16 @@ env: BINARY_CHECKSUM_PATH: target/release/gitlance.sha256 jobs: + reuse: + runs-on: ubuntu-24.04 + steps: + - uses: actions/checkout@v7 + + - name: REUSE Compliance Check + uses: fsfe/reuse-action@v5 + release: + needs: reuse runs-on: ubuntu-24.04 permissions: contents: write @@ -30,12 +39,10 @@ jobs: - name: Install Task run: sudo snap install --classic task - - name: Install reuse tool - run: sudo apt-get update && sudo apt-get install -y reuse - + # REUSE compliance is checked in a separate job using fsfe/reuse-action - name: Run validation timeout-minutes: 10 - run: task validate + run: task validate SKIP_REUSE=true - name: Build release binary run: cargo build --release --locked diff --git a/.github/workflows/validate.yml b/.github/workflows/validate.yml index 61a8a02..2bf5ca8 100644 --- a/.github/workflows/validate.yml +++ b/.github/workflows/validate.yml @@ -11,6 +11,14 @@ on: branches: [ main ] jobs: + reuse: + runs-on: ubuntu-24.04 + steps: + - uses: actions/checkout@v7 + + - name: REUSE Compliance Check + uses: fsfe/reuse-action@v5 + validate: runs-on: ubuntu-24.04 steps: @@ -25,9 +33,7 @@ jobs: - name: Install Task run: sudo snap install --classic task - - name: Install reuse tool - run: sudo apt-get update && sudo apt-get install -y reuse - + # REUSE compliance is checked in a separate job using fsfe/reuse-action - name: Run validation timeout-minutes: 10 - run: task validate + run: task validate SKIP_REUSE=true diff --git a/Taskfile.yml b/Taskfile.yml index 83ff7bf..0da335a 100644 --- a/Taskfile.yml +++ b/Taskfile.yml @@ -130,7 +130,8 @@ tasks: cmds: - task: fmt-check - task: lint - - task: reuse + - cmd: task reuse + if: '[ "{{.SKIP_REUSE}}" != "true" ]' - task: coverage validate-fix: