-
Notifications
You must be signed in to change notification settings - Fork 16
/
Copy path.gitlab-ci.yml
129 lines (118 loc) · 2.88 KB
/
.gitlab-ci.yml
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
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
# Environment variables
#
# * PYTEST_ADDOPTS is used to filter test runs. The default value is "-m 'not slowtest'",
# which skips the slow running tests.
# * SKIP_EXAMPLES, if non-empty, can be used to skip the examples job.
Python 3 POCL:
script: |
export PYOPENCL_TEST="portable:cpu"
export PYTEST_ADDOPTS=${PYTEST_ADDOPTS:-"-m 'not slowtest'"}
export EXTRA_INSTALL="Cython pybind11 numpy scipy mako"
curl -L -O https://tiker.net/ci-support-v0
. ci-support-v0
build_py_project_in_venv
test_py_project
tags:
- python3
- pocl
- large-node
except:
- tags
artifacts:
reports:
junit: test/pytest.xml
Python 3 Intel:
# Sample failure: https://gitlab.tiker.net/inducer/arraycontext/-/jobs/536080
allow_failure: true
script: |
source /opt/enable-intel-cl.sh
export PYOPENCL_TEST="intel(r):pu"
export PYTEST_ADDOPTS=${PYTEST_ADDOPTS:-"-m 'not slowtest'"}
export EXTRA_INSTALL="Cython pybind11 numpy scipy mako"
curl -L -O https://tiker.net/ci-support-v0
. ci-support-v0
build_py_project_in_venv
test_py_project
tags:
- python3
- intel-cl-cpu
- large-node
except:
- tags
artifacts:
reports:
junit: test/pytest.xml
Python 3 POCL Examples:
script: |
test -n "$SKIP_EXAMPLES" && exit
export PYOPENCL_TEST=portable:cpu
export EXTRA_INSTALL="Cython pybind11 numpy scipy mako matplotlib pyvisfile"
curl -L -O https://tiker.net/ci-support-v0
. ci-support-v0
build_py_project_in_venv
run_examples
tags:
- python3
- pocl
- large-node
except:
- tags
Python 3 Conda:
script: |
export SUMPY_FORCE_SYMBOLIC_BACKEND=symengine
export PYTEST_ADDOPTS=${PYTEST_ADDOPTS:-"-m 'not slowtest'"}
export PYOPENCL_TEST=portable:cpu
curl -L -O https://tiker.net/ci-support-v0
. ci-support-v0
build_py_project_in_conda_env
test_py_project
tags:
- linux
- large-node
except:
- tags
artifacts:
reports:
junit: test/pytest.xml
Documentation:
script: |
export EXTRA_INSTALL="Cython pybind11 numpy scipy mako"
curl -L -O https://tiker.net/ci-support-v0
. ci-support-v0
build_py_project
build_docs
tags:
- python3
Pylint:
script: |
export EXTRA_INSTALL="Cython pybind11 numpy scipy mako matplotlib"
curl -L -O https://tiker.net/ci-support-v0
. ci-support-v0
# pylint seems unable to find the cython bits if not installed
# editable. -AK, 2023-11-01
PROJECT_INSTALL_FLAGS="--editable"
build_py_project
run_pylint "$(get_proj_name)" examples/*.py test/*.py
tags:
- python3
except:
- tags
Mypy:
script: |
curl -L -O https://tiker.net/ci-support-v0
. ./ci-support-v0
build_py_project_in_venv
python -m pip install mypy pytest
./run-mypy.sh
tags:
- python3
except:
- tags
Ruff:
script: |
pipx install ruff
ruff check
tags:
- docker-runner
except:
- tags