-
Notifications
You must be signed in to change notification settings - Fork 64
104 lines (99 loc) · 2.68 KB
/
CI.yml
File metadata and controls
104 lines (99 loc) · 2.68 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
name: CI
on:
pull_request:
paths: &paths
- ".github/workflows/CI.yml"
- ".github/workflows/CommonCI.yml"
- "ext/**"
- "lib/**"
- "src/**"
- "test/**"
- "Project.toml"
push:
branches:
- main
- release-*
tags: ["*"]
paths: *paths
concurrency:
# Skip intermediate builds: always.
# Cancel intermediate builds: only if it is a pull request build.
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: ${{ startsWith(github.ref, 'refs/pull/') }}
jobs:
test:
strategy:
fail-fast: false
matrix:
version:
- "1.10"
- "1.11"
- "1.12"
# - 'nightly'
os:
- ubuntu-24.04
# `ubuntu-22.04-arm` is considered more stable than `ubuntu-24.04-arm`:
# <https://github.com/orgs/community/discussions/148648#discussioncomment-12099554>.
- ubuntu-22.04-arm
# Disable `macOS-13` until
# <https://github.com/EnzymeAD/Reactant.jl/issues/867> is resolved.
# - macOS-13
- macOS-latest
- windows-latest
- linux-x86-ct6e-180-4tpu
test_group:
- core
- nn
- integration
- probprog
runtime:
- "pjrt"
- "ifrt"
exclude:
- os: linux-x86-ct6e-180-4tpu
version: "1.10"
- os: linux-x86-ct6e-180-4tpu
runtime: "pjrt"
uses: ./.github/workflows/CommonCI.yml
with:
julia_version: ${{ matrix.version }}
os: ${{ matrix.os }}
runtime: ${{ matrix.runtime }}
test_args: ${{ matrix.test_group == 'core' && 'core plugins' || matrix.test_group }}
# This has been broken for a while, originating from CUDA.jl
# test-assertions:
# strategy:
# fail-fast: false
# matrix:
# version:
# - "1.10"
# test_group:
# - core
# - nn
# - integration
# uses: ./.github/workflows/CommonCI.yml
# with:
# julia_version: ${{ matrix.version }}
# os: "ubuntu-24.04"
# runtime: "both"
# assertions: true
# test_args: ${{ matrix.test_group == 'core' && 'core plugins' || matrix.test_group }}
downgrade:
strategy:
fail-fast: false
matrix:
test_group:
- core
- nn
- integration
- probprog
runtime:
- "pjrt"
- "ifrt"
uses: ./.github/workflows/CommonCI.yml
with:
julia_version: "1.10"
os: "ubuntu-24.04"
runtime: ${{ matrix.runtime }}
test_args: ${{ matrix.test_group == 'core' && 'core plugins' || matrix.test_group }}
downgrade_testing: true