diff --git a/.gitea/workflows/main.yaml b/.gitea/workflows/main.yaml index 7e39e6b..8923552 100644 --- a/.gitea/workflows/main.yaml +++ b/.gitea/workflows/main.yaml @@ -6,8 +6,32 @@ on: - main jobs: + detect-changes: + name: Erkenne relevante Code-Änderungen + runs-on: ubuntu-latest + outputs: + code_changed: ${{ steps.filter.outputs.code }} + steps: + - name: Checkout Repository + uses: actions/checkout@v7 + + - name: Prüfe auf Änderungen am Programmcode + uses: dorny/paths-filter@v4 + id: filter + with: + filters: | + code: + - 'src/**' + - 'Cargo.toml' + - 'Cargo.lock' + - 'scripts/**' + - '.cargo/**' + - '.gitea/workflows/main.yaml' + release-and-publish: name: Build, Publish Crate to Gitea Registry & Create Release + needs: detect-changes + if: needs.detect-changes.outputs.code_changed == 'true' runs-on: ubuntu-latest steps: - name: Checkout Repository diff --git a/.gitea/workflows/testing.yaml b/.gitea/workflows/testing.yaml index 328ca4f..44e60dd 100644 --- a/.gitea/workflows/testing.yaml +++ b/.gitea/workflows/testing.yaml @@ -6,8 +6,32 @@ on: - testing jobs: + detect-changes: + name: Erkenne relevante Code-Änderungen + runs-on: ubuntu-latest + outputs: + code_changed: ${{ steps.filter.outputs.code }} + steps: + - name: Checkout Repository + uses: actions/checkout@v7 + + - name: Prüfe auf Änderungen am Programmcode + uses: dorny/paths-filter@v4 + id: filter + with: + filters: | + code: + - 'src/**' + - 'Cargo.toml' + - 'Cargo.lock' + - 'scripts/**' + - '.cargo/**' + - '.gitea/workflows/testing.yaml' + build-and-preview: name: Build, Check & Create Preview Release + needs: detect-changes + if: needs.detect-changes.outputs.code_changed == 'true' runs-on: ubuntu-latest steps: - name: Checkout Repository