From 0acb6fb4387e6bf53160b3a9d637adb4840348c5 Mon Sep 17 00:00:00 2001 From: Anant Thazhemadam Date: Mon, 29 Apr 2024 19:27:29 +0530 Subject: [PATCH 1/4] ci: update invalidations workflow to use centralised reusable workflow --- .github/workflows/Invalidations.yml | 33 ++++------------------------- 1 file changed, 4 insertions(+), 29 deletions(-) diff --git a/.github/workflows/Invalidations.yml b/.github/workflows/Invalidations.yml index 66c86a3..34eb7a9 100644 --- a/.github/workflows/Invalidations.yml +++ b/.github/workflows/Invalidations.yml @@ -1,4 +1,4 @@ -name: Invalidations +name: "Invalidations" on: pull_request: @@ -10,31 +10,6 @@ concurrency: cancel-in-progress: true jobs: - evaluate: - # Only run on PRs to the default branch. - # In the PR trigger above branches can be specified only explicitly whereas this check should work for master, main, or any other default branch - if: github.base_ref == github.event.repository.default_branch - runs-on: ubuntu-latest - steps: - - uses: julia-actions/setup-julia@v2 - with: - version: '1' - - uses: actions/checkout@v4 - - uses: julia-actions/julia-buildpkg@v1 - - uses: julia-actions/julia-invalidations@v1 - id: invs_pr - - - uses: actions/checkout@v4 - with: - ref: ${{ github.event.repository.default_branch }} - - uses: julia-actions/julia-buildpkg@v1 - - uses: julia-actions/julia-invalidations@v1 - id: invs_default - - - name: Report invalidation counts - run: | - echo "Invalidations on default branch: ${{ steps.invs_default.outputs.total }} (${{ steps.invs_default.outputs.deps }} via deps)" >> $GITHUB_STEP_SUMMARY - echo "This branch: ${{ steps.invs_pr.outputs.total }} (${{ steps.invs_pr.outputs.deps }} via deps)" >> $GITHUB_STEP_SUMMARY - - name: Check if the PR does increase number of invalidations - if: steps.invs_pr.outputs.total > steps.invs_default.outputs.total - run: exit 1 + evaluate-invalidations: + name: "Evaluate Invalidations" + uses: "SciML/.github/.github/workflows/invalidations.yml@v1" From 9903ef0f6797f378a809f154654943c2e276817d Mon Sep 17 00:00:00 2001 From: Anant Thazhemadam Date: Mon, 29 Apr 2024 19:41:25 +0530 Subject: [PATCH 2/4] ci: update format check workflow to use centralised reusable workflow --- .github/workflows/FormatCheck.yml | 16 ++++++++++------ 1 file changed, 10 insertions(+), 6 deletions(-) diff --git a/.github/workflows/FormatCheck.yml b/.github/workflows/FormatCheck.yml index 0ddeb4e..7e46c8d 100644 --- a/.github/workflows/FormatCheck.yml +++ b/.github/workflows/FormatCheck.yml @@ -1,9 +1,13 @@ -name: Format suggestions +name: "Format Check" -on: [pull_request] +on: + push: + branches: + - 'main' + tags: '*' + pull_request: jobs: - code-style: - runs-on: ubuntu-latest - steps: - - uses: julia-actions/julia-format@v3 + format-check: + name: "Format Check" + uses: "SciML/.github/.github/workflows/format-check.yml@v1" From f6b77d7a1de91028b24b312054dfd077ea589b46 Mon Sep 17 00:00:00 2001 From: Anant Thazhemadam Date: Thu, 1 Aug 2024 00:12:14 +0200 Subject: [PATCH 3/4] ci: update tests workflow to use centralized reusable workflow --- .github/workflows/CI.yml | 55 ------------------------------------- .github/workflows/Tests.yml | 42 ++++++++++++++++++++++++++++ 2 files changed, 42 insertions(+), 55 deletions(-) delete mode 100644 .github/workflows/CI.yml create mode 100644 .github/workflows/Tests.yml diff --git a/.github/workflows/CI.yml b/.github/workflows/CI.yml deleted file mode 100644 index 295de10..0000000 --- a/.github/workflows/CI.yml +++ /dev/null @@ -1,55 +0,0 @@ -name: CI -on: - pull_request: - branches: - - main - push: - branches: - - main -jobs: - test: - runs-on: ${{ matrix.os }} - strategy: - fail-fast: false - matrix: - group: - - Core - version: - - '1' - os: - - ubuntu-latest - - macos-latest - - windows-latest - steps: - - uses: actions/checkout@v4 - - uses: julia-actions/setup-julia@v2 - with: - version: ${{ matrix.version }} - - uses: actions/cache@v4 - env: - cache-name: cache-artifacts - with: - path: ~/.julia/artifacts - key: ${{ runner.os }}-test-${{ env.cache-name }}-${{ hashFiles('**/Project.toml') }} - restore-keys: | - ${{ runner.os }}-test-${{ env.cache-name }}- - ${{ runner.os }}-test- - ${{ runner.os }}- - - uses: julia-actions/julia-buildpkg@v1 - - uses: julia-actions/julia-runtest@v1 - with: - annotate: true - env: - GROUP: ${{ matrix.group }} - JULIA_NUM_THREADS: 11 - RETESTITEMS_NWORKERS: 4 - RETESTITEMS_NWORKER_THREADS: 2 - - uses: julia-actions/julia-processcoverage@v1 - with: - directories: src,ext - - uses: codecov/codecov-action@v4 - with: - file: lcov.info - token: ${{ secrets.CODECOV_TOKEN }} - verbose: true - fail_ci_if_error: true \ No newline at end of file diff --git a/.github/workflows/Tests.yml b/.github/workflows/Tests.yml new file mode 100644 index 0000000..8fa495e --- /dev/null +++ b/.github/workflows/Tests.yml @@ -0,0 +1,42 @@ +name: "Tests" + +on: + pull_request: + branches: + - main + - 'release-' + paths-ignore: + - 'docs/**' + push: + branches: + - main + paths-ignore: + - 'docs/**' + +concurrency: + group: ${{ github.workflow }}-${{ github.ref }} + cancel-in-progress: ${{ github.ref_name != github.event.repository.default_branch || github.ref != 'refs/tags/v*' }} + +env: + JULIA_NUM_THREADS: 11 + RETESTITEMS_NWORKERS: 4 + RETESTITEMS_NWORKER_THREADS: 2 + +jobs: + tests: + name: "Tests" + strategy: + fail-fast: false + matrix: + group: + - "Core" + os: + - "ubuntu-latest" + - "macos-latest" + - "windows-latest" + + uses: "SciML/.github/.github/workflows/tests.yml@v1" + with: + group: "${{ matrix.group }}" + os: "${{ matrix.os }}" + secrets: "inherit" From 0dbf63418bf0460298831ff7418e49167d51c5c7 Mon Sep 17 00:00:00 2001 From: Anant Thazhemadam Date: Thu, 1 Aug 2024 00:12:26 +0200 Subject: [PATCH 4/4] ci(format-check): automatically comment formatting suggestions on PRs --- .github/workflows/FormatCheck.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/FormatCheck.yml b/.github/workflows/FormatCheck.yml index 7e46c8d..fe9c128 100644 --- a/.github/workflows/FormatCheck.yml +++ b/.github/workflows/FormatCheck.yml @@ -10,4 +10,4 @@ on: jobs: format-check: name: "Format Check" - uses: "SciML/.github/.github/workflows/format-check.yml@v1" + uses: "SciML/.github/.github/workflows/format-suggestions-on-pr.yml@v1"