From 03128f7f3d169f0ee117cffa7c4e4636de6b20d0 Mon Sep 17 00:00:00 2001 From: mahula Date: Wed, 15 Mar 2023 13:44:22 +0100 Subject: [PATCH] add file filters to dht and federation workflows --- .github/file-filters.yml | 8 +++++++- .github/workflows/test_dht-node.yml | 24 ++++++++++++++++++++++++ .github/workflows/test_federation.yml | 24 ++++++++++++++++++++++++ 3 files changed, 55 insertions(+), 1 deletion(-) diff --git a/.github/file-filters.yml b/.github/file-filters.yml index f3ec61fc2..6e6ce1d5a 100644 --- a/.github/file-filters.yml +++ b/.github/file-filters.yml @@ -30,5 +30,11 @@ admin: &admin - 'admin/**/*' -frontend: &admin +dht_node: &dht_node + - 'dht-node/**/*' + +federation: &federation + - 'federation/**/*' + +frontend: &frontend - 'frontend/**/*' \ No newline at end of file diff --git a/.github/workflows/test_dht-node.yml b/.github/workflows/test_dht-node.yml index fbda230ee..2dec4717d 100644 --- a/.github/workflows/test_dht-node.yml +++ b/.github/workflows/test_dht-node.yml @@ -3,11 +3,31 @@ name: Gradido DHT Node Test CI on: push jobs: + # only (but most important) job from this workflow required for pull requests + # check results serve as run conditions for all other jobs here + files-changed: + name: Detect File Changes - DHT Node + runs-on: ubuntu-latest + outputs: + frontend: ${{ steps.changes.outputs.dht_node }} + steps: + - uses: actions/checkout@v3.3.0 + + - name: Check for frontend file changes + uses: dorny/paths-filter@v2.11.1 + id: changes + with: + token: ${{ github.token }} + filters: .github/file-filters.yml + list-files: shell + ############################################################################## # JOB: DOCKER BUILD TEST ##################################################### ############################################################################## build: name: Docker Build Test - DHT Node + if: needs.files-changed.outputs.dht_node == 'true' + needs: files-changed runs-on: ubuntu-latest steps: - name: Checkout code @@ -29,6 +49,8 @@ jobs: ############################################################################## lint: name: Lint - DHT Node + if: needs.files-changed.outputs.dht_node == 'true' + needs: files-changed runs-on: ubuntu-latest needs: [build] steps: @@ -51,6 +73,8 @@ jobs: ############################################################################## unit_test: name: Unit Tests - DHT Node + if: needs.files-changed.outputs.dht_node == 'true' + needs: files-changed runs-on: ubuntu-latest needs: [build] steps: diff --git a/.github/workflows/test_federation.yml b/.github/workflows/test_federation.yml index 7d92f1f84..5fb5bdab0 100644 --- a/.github/workflows/test_federation.yml +++ b/.github/workflows/test_federation.yml @@ -3,11 +3,31 @@ name: Gradido Federation Test CI on: push jobs: + # only (but most important) job from this workflow required for pull requests + # check results serve as run conditions for all other jobs here + files-changed: + name: Detect File Changes - Federation + runs-on: ubuntu-latest + outputs: + frontend: ${{ steps.changes.outputs.federation }} + steps: + - uses: actions/checkout@v3.3.0 + + - name: Check for frontend file changes + uses: dorny/paths-filter@v2.11.1 + id: changes + with: + token: ${{ github.token }} + filters: .github/file-filters.yml + list-files: shell + ############################################################################## # JOB: DOCKER BUILD TEST ##################################################### ############################################################################## build: name: Docker Build Test - Federation + if: needs.files-changed.outputs.federation == 'true' + needs: files-changed runs-on: ubuntu-latest steps: - name: Checkout code @@ -29,6 +49,8 @@ jobs: ############################################################################## lint: name: Lint - Federation + if: needs.files-changed.outputs.federation == 'true' + needs: files-changed runs-on: ubuntu-latest needs: [build] steps: @@ -51,6 +73,8 @@ jobs: ############################################################################## unit_test: name: Unit Tests - Federation + if: needs.files-changed.outputs.federation == 'true' + needs: files-changed runs-on: ubuntu-latest needs: [build] steps: