From b3ec7d310f6f265b2ba48da1fbf0a08ffc9799b2 Mon Sep 17 00:00:00 2001 From: mspronesti Date: Mon, 5 Aug 2024 12:07:52 +0100 Subject: [PATCH] ci: run actions only on code changes --- .github/workflows/ci-dev.yml | 23 ++++++++++++++++++++--- .github/workflows/ci-train-gpu.yml | 16 ++++++++++++++++ 2 files changed, 36 insertions(+), 3 deletions(-) diff --git a/.github/workflows/ci-dev.yml b/.github/workflows/ci-dev.yml index dd8cdcc..87ea418 100644 --- a/.github/workflows/ci-dev.yml +++ b/.github/workflows/ci-dev.yml @@ -3,11 +3,26 @@ name: CI kernels on: [push, pull_request] jobs: + diff: + runs-on: ubuntu-latest + outputs: + sycl_changed: ${{ steps.filter.outputs.sycl_changed }} + steps: + - uses: actions/checkout@v4 + - uses: dorny/paths-filter@v3 + id: filter + with: + filters: | + sycl_changed: + - 'dev/sycl/**' + gpu: + needs: diff runs-on: devcloud # self-hosted GPU runner on Intel devcloud name: Run all kernels (GPU) + if: needs.diff.outputs.sycl_changed == 'true' steps: - - uses: actions/checkout@v3 + - uses: actions/checkout@v4 - name: Build kernels (GPU) run: | @@ -20,10 +35,12 @@ jobs: make run_all CC=icx cpu: + needs: diff runs-on: ubuntu-latest name: Run all kernels (CPU) + if: needs.diff.outputs.sycl_changed == 'true' steps: - - uses: actions/checkout@v3 + - uses: actions/checkout@v4 - name: Install OneAPI uses: rscohn2/setup-oneapi@v0 with: @@ -51,4 +68,4 @@ jobs: - name: Run kernels (CPU) run: | cd dev/sycl - make run_all CC=icx + make run_all CC=icx \ No newline at end of file diff --git a/.github/workflows/ci-train-gpu.yml b/.github/workflows/ci-train-gpu.yml index e6d9970..aa96649 100644 --- a/.github/workflows/ci-train-gpu.yml +++ b/.github/workflows/ci-train-gpu.yml @@ -3,9 +3,25 @@ name: GPU Train and Test on: [push, pull_request] jobs: + diff: + runs-on: ubuntu-latest + outputs: + train_test_changed: ${{ steps.filter.outputs.train_test_changed }} + steps: + - uses: actions/checkout@v4 + - uses: dorny/paths-filter@v3 + id: filter + with: + filters: | + train_test_changed: + - 'train_*' + - 'test_*' + train-and-test-gpu: + needs: diff runs-on: devcloud # self-hosted GPU runner on Intel devcloud + if: needs.diff.outputs.train_test_changed == 'true' steps: - name: Checkout code uses: actions/checkout@v4