21
21
pull_request :
22
22
paths :
23
23
- ' .github/workflows/ci-macos.yml'
24
- - ' .github/workflows/macos.yml'
25
24
push :
26
25
tags :
27
26
- ' *'
28
27
workflow_dispatch :
29
28
# Allow to run manually
30
29
31
- env :
32
- TARGETS_PRE : all-sage-local
33
- TARGETS : build
34
- TARGETS_OPTIONAL : ptest
35
-
36
30
jobs :
37
- stage-1 :
38
- uses : ./.github/workflows/macos.yml
39
- with :
40
- stage : " 1"
41
- timeout : 14400
42
-
43
- stage-2 :
44
- uses : ./.github/workflows/macos.yml
45
- with :
46
- stage : " 2"
47
- needs : [stage-1]
48
- if : ${{ success() || failure() }}
31
+ macos :
32
+ name : Build and Test (macos-${{ matrix.version }})
33
+ runs-on : macos-${{ matrix.version }}
34
+ strategy :
35
+ fail-fast : false
36
+ matrix :
37
+ version :
38
+ - ' 13'
39
+ - ' 14'
40
+ - ' 15'
49
41
50
- stage-2-optional-0-o :
51
- uses : ./.github/workflows/macos.yml
52
- with :
53
- stage : " 2-optional-0-o"
54
- needs : [stage-2]
55
- if : ${{ success() || failure() }}
42
+ steps :
43
+ - name : Checkout code
44
+ uses : actions/checkout@v4
56
45
57
- stage-2-optional-p-z :
58
- uses : ./.github/workflows/macos.yml
59
- with :
60
- stage : " 2-optional-p-z "
61
- needs : [stage-2-optional-0-o]
62
- if : ${{ success() || failure() }}
46
+ - uses : actions/setup-python@v5
47
+ with :
48
+ python-version : " 3.13 "
49
+
50
+ - name : Install test prerequisites
51
+ run : python -m pip install tox
63
52
64
- stage-2-experimental-0-o :
65
- uses : ./.github/workflows/macos.yml
66
- with :
67
- stage : " 2-experimental-0-o"
68
- needs : [stage-2-optional-p-z]
69
- if : ${{ success() || failure() }}
53
+ - name : Install dependencies
54
+ run : |
55
+ eval $(build/bin/sage-print-system-package-command homebrew update)
56
+ eval $(build/bin/sage-print-system-package-command homebrew --yes --ignore-missing install $(build/bin/sage-get-system-packages homebrew _bootstrap _prereq $(build/bin/sage-package list :standard:)))
70
57
71
- stage-2-experimental-p-z :
72
- uses : ./.github/workflows/macos.yml
73
- with :
74
- stage : " 2-experimental-p-z"
75
- needs : [stage-2-experimental-0-o]
76
- if : ${{ success() || failure() }}
58
+ - name : Build
59
+ run : |
60
+ source ./.homebrew-build-env
61
+ ./bootstrap
62
+ ./configure --enable-download-from-upstream-url
63
+ make build V=0
64
+ env :
65
+ MAKE : ' make -j6'
66
+
67
+ - name : Test
68
+ run : |
69
+ source ./.homebrew-build-env # Needed so that runtime cython can find the dependencies
70
+ ./sage -t --all -p4
71
+
0 commit comments