@@ -21,137 +21,137 @@ env:
21
21
RELEASE_TAG : latest
22
22
23
23
jobs :
24
- build :
25
- name : " Build Firedrake"
26
- # Run on our self-hosted machines
27
- runs-on : [self-hosted, Linux]
28
- container :
29
- image : firedrakeproject/firedrake-env:latest
30
- strategy :
31
- # Don't immediately kill real if complex fails and vice versa.
32
- fail-fast : false
33
- matrix :
34
- include :
35
- - scalar-type : real
36
- complex : " "
37
- petsc_arch : default
38
- - scalar-type : complex
39
- complex : --complex
40
- petsc_arch : complex
41
- env :
42
- # PETSC_DIR and MPICH_DIR are set inside the docker image
43
- FIREDRAKE_CI_TESTS : 1
44
- PYOP2_CI_TESTS : 1
45
- PETSC_ARCH : ${{ matrix.petsc_arch }}
46
- OMP_NUM_THREADS : 1
47
- OPENBLAS_NUM_THREADS : 1
48
- COMPLEX : ${{ matrix.complex }}
49
- RDMAV_FORK_SAFE : 1
50
- steps :
51
- - uses : actions/checkout@v4
52
- - name : Cleanup
53
- if : ${{ always() }}
54
- run : |
55
- cd ..
56
- rm -rf firedrake_venv
57
- - name : Build Firedrake
58
- run : |
59
- cd ..
60
- # Linting should ignore unquoted shell variable $COMPLEX
61
- # shellcheck disable=SC2086
62
- ./firedrake/scripts/firedrake-install \
63
- $COMPLEX \
64
- --honour-petsc-dir \
65
- --mpicc="$MPICH_DIR"/mpicc \
66
- --mpicxx="$MPICH_DIR"/mpicxx \
67
- --mpif90="$MPICH_DIR"/mpif90 \
68
- --mpiexec="$MPICH_DIR"/mpiexec \
69
- --mpihome="$MPICH_DIR"/.. \
70
- --venv-name firedrake_venv \
71
- --no-package-manager \
72
- --disable-ssh \
73
- --documentation-dependencies \
74
- --torch \
75
- --jax \
76
- --netgen \
77
- --slepc \
78
- --install thetis \
79
- --install gusto \
80
- --install icepack \
81
- --install irksome \
82
- --install femlium \
83
- --install fascd \
84
- --install defcon \
85
- --install gadopt \
86
- --install asQ \
87
- || (cat firedrake-install.log && /bin/false)
88
- - name : Install test dependencies
89
- run : |
90
- . ../firedrake_venv/bin/activate
91
- python "$(which firedrake-clean)"
92
- python -m pip install \
93
- pytest-xdist pytest-timeout ipympl
94
- python -m pip list
95
- - name : Test Firedrake
96
- run : |
97
- . ../firedrake_venv/bin/activate
98
- echo OMP_NUM_THREADS is "$OMP_NUM_THREADS"
99
- echo OPENBLAS_NUM_THREADS is "$OPENBLAS_NUM_THREADS"
100
- python -m pytest -v tests/firedrake/test_0init.py
101
- python -m pytest \
102
- --durations=200 \
103
- --timeout=1800 \
104
- --timeout-method=thread \
105
- -o faulthandler_timeout=1860 \
106
- -n 12 --dist worksteal \
107
- --junit-xml=firedrake.xml \
108
- -sv tests/firedrake
109
- timeout-minutes : 120
110
- - name : Publish Test Report
111
-
112
- if : ${{ always() && ( github.ref != 'refs/heads/master') }}
113
- with :
114
- report_paths : ' /__w/firedrake/firedrake/firedrake.xml'
115
- comment : true
116
- check_name : " Firedrake ${{ matrix.scalar-type }}"
117
- updateComment : true
118
- flaky_summary : true
119
- - name : Test pyadjoint
120
- if : ${{ matrix.scalar-type == 'real' }}
121
- run : |
122
- . ../firedrake_venv/bin/activate
123
- cd ../firedrake_venv/src/pyadjoint
124
- python -m pytest \
125
- --durations=200 \
126
- --timeout=600 \
127
- --timeout-method=thread \
128
- -o faulthandler_timeout=660 \
129
- -n 12 --dist worksteal \
130
- -sv tests/firedrake_adjoint
131
- timeout-minutes : 30
132
- - name : Cleanup
133
- # Belt and braces: clean up before and after the run.
134
- if : ${{ always() }}
135
- run : |
136
- cd ..
137
- rm -rf firedrake_venv
138
-
139
- docker_tag :
140
- name : " Set the Docker release tag"
141
- runs-on : [self-hosted, Linux]
142
- if : ${{ github.ref == 'refs/heads/master' }}
143
- steps :
144
- - name : Set release tag
145
- # Set a release tag if triggered by monthly CRON job
146
- if : github.event.schedule == '0 0 1 * *'
147
- run : |
148
- DATE_TAG="$(date +%Y-%m)"
149
- echo "RELEASE_TAG=$DATE_TAG" >> "$GITHUB_ENV"
150
- - name : Print release tag being used
151
- run : |
152
- echo The release tag is "$RELEASE_TAG"
153
- outputs :
154
- tag : ${{ env.RELEASE_TAG }}
24
+ # build:
25
+ # name: "Build Firedrake"
26
+ # # Run on our self-hosted machines
27
+ # runs-on: [self-hosted, Linux]
28
+ # container:
29
+ # image: firedrakeproject/firedrake-env:latest
30
+ # strategy:
31
+ # # Don't immediately kill real if complex fails and vice versa.
32
+ # fail-fast: false
33
+ # matrix:
34
+ # include:
35
+ # - scalar-type: real
36
+ # complex: ""
37
+ # petsc_arch: default
38
+ # - scalar-type: complex
39
+ # complex: --complex
40
+ # petsc_arch: complex
41
+ # env:
42
+ # # PETSC_DIR and MPICH_DIR are set inside the docker image
43
+ # FIREDRAKE_CI_TESTS: 1
44
+ # PYOP2_CI_TESTS: 1
45
+ # PETSC_ARCH: ${{ matrix.petsc_arch }}
46
+ # OMP_NUM_THREADS: 1
47
+ # OPENBLAS_NUM_THREADS: 1
48
+ # COMPLEX: ${{ matrix.complex }}
49
+ # RDMAV_FORK_SAFE: 1
50
+ # steps:
51
+ # - uses: actions/checkout@v4
52
+ # - name: Cleanup
53
+ # if: ${{ always() }}
54
+ # run: |
55
+ # cd ..
56
+ # rm -rf firedrake_venv
57
+ # - name: Build Firedrake
58
+ # run: |
59
+ # cd ..
60
+ # # Linting should ignore unquoted shell variable $COMPLEX
61
+ # # shellcheck disable=SC2086
62
+ # ./firedrake/scripts/firedrake-install \
63
+ # $COMPLEX \
64
+ # --honour-petsc-dir \
65
+ # --mpicc="$MPICH_DIR"/mpicc \
66
+ # --mpicxx="$MPICH_DIR"/mpicxx \
67
+ # --mpif90="$MPICH_DIR"/mpif90 \
68
+ # --mpiexec="$MPICH_DIR"/mpiexec \
69
+ # --mpihome="$MPICH_DIR"/.. \
70
+ # --venv-name firedrake_venv \
71
+ # --no-package-manager \
72
+ # --disable-ssh \
73
+ # --documentation-dependencies \
74
+ # --torch \
75
+ # --jax \
76
+ # --netgen \
77
+ # --slepc \
78
+ # --install thetis \
79
+ # --install gusto \
80
+ # --install icepack \
81
+ # --install irksome \
82
+ # --install femlium \
83
+ # --install fascd \
84
+ # --install defcon \
85
+ # --install gadopt \
86
+ # --install asQ \
87
+ # || (cat firedrake-install.log && /bin/false)
88
+ # - name: Install test dependencies
89
+ # run: |
90
+ # . ../firedrake_venv/bin/activate
91
+ # python "$(which firedrake-clean)"
92
+ # python -m pip install \
93
+ # pytest-xdist pytest-timeout ipympl
94
+ # python -m pip list
95
+ # - name: Test Firedrake
96
+ # run: |
97
+ # . ../firedrake_venv/bin/activate
98
+ # echo OMP_NUM_THREADS is "$OMP_NUM_THREADS"
99
+ # echo OPENBLAS_NUM_THREADS is "$OPENBLAS_NUM_THREADS"
100
+ # python -m pytest -v tests/firedrake/test_0init.py
101
+ # python -m pytest \
102
+ # --durations=200 \
103
+ # --timeout=1800 \
104
+ # --timeout-method=thread \
105
+ # -o faulthandler_timeout=1860 \
106
+ # -n 12 --dist worksteal \
107
+ # --junit-xml=firedrake.xml \
108
+ # -sv tests/firedrake
109
+ # timeout-minutes: 120
110
+ # - name: Publish Test Report
111
+ # uses: mikepenz/[email protected]
112
+ # if: ${{ always() && ( github.ref != 'refs/heads/master') }}
113
+ # with:
114
+ # report_paths: '/__w/firedrake/firedrake/firedrake.xml'
115
+ # comment: true
116
+ # check_name: "Firedrake ${{ matrix.scalar-type }}"
117
+ # updateComment: true
118
+ # flaky_summary: true
119
+ # - name: Test pyadjoint
120
+ # if: ${{ matrix.scalar-type == 'real' }}
121
+ # run: |
122
+ # . ../firedrake_venv/bin/activate
123
+ # cd ../firedrake_venv/src/pyadjoint
124
+ # python -m pytest \
125
+ # --durations=200 \
126
+ # --timeout=600 \
127
+ # --timeout-method=thread \
128
+ # -o faulthandler_timeout=660 \
129
+ # -n 12 --dist worksteal \
130
+ # -sv tests/firedrake_adjoint
131
+ # timeout-minutes: 30
132
+ # - name: Cleanup
133
+ # # Belt and braces: clean up before and after the run.
134
+ # if: ${{ always() }}
135
+ # run: |
136
+ # cd ..
137
+ # rm -rf firedrake_venv
138
+ #
139
+ # docker_tag:
140
+ # name: "Set the Docker release tag"
141
+ # runs-on: [self-hosted, Linux]
142
+ # if: ${{ github.ref == 'refs/heads/master' }}
143
+ # steps:
144
+ # - name: Set release tag
145
+ # # Set a release tag if triggered by monthly CRON job
146
+ # if: github.event.schedule == '0 0 1 * *'
147
+ # run: |
148
+ # DATE_TAG="$(date +%Y-%m)"
149
+ # echo "RELEASE_TAG=$DATE_TAG" >> "$GITHUB_ENV"
150
+ # - name: Print release tag being used
151
+ # run: |
152
+ # echo The release tag is "$RELEASE_TAG"
153
+ # outputs:
154
+ # tag: ${{ env.RELEASE_TAG }}
155
155
156
156
docker :
157
157
name : " Build Docker containers"
0 commit comments