-
Notifications
You must be signed in to change notification settings - Fork 27
133 lines (131 loc) · 4.03 KB
/
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
130
131
132
133
name: CI
on: [pull_request]
jobs:
health:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- uses: actions/setup-python@v4
with:
python-version: "3.10"
- name: Setup MPI
uses: mpi4py/setup-mpi@v1
with:
mpi: openmpi
- name: Install dependencies
run: |
python -m pip install --upgrade pip
pip install -r requirements.txt
pip install -r dev/dev.txt
- name: pylint
run: |
python dev/run_tests.py --pylint
- name: format
run: |
python dev/run_tests.py --black
- name: flynt
run: |
python dev/run_tests.py --flynt
pytest-mpi4py:
strategy:
fail-fast: false
matrix:
python-version: [ '3.8', '3.9', '3.10' ]
mpi:
- openmpi
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- uses: actions/setup-python@v4
with:
python-version: ${{ matrix.python-version }}
architecture: 'x64'
- name: Setup MPI
uses: mpi4py/setup-mpi@v1
with:
mpi: ${{ matrix.mpi }}
- name: Install dependencies
run: |
python -m pip install --upgrade pip
pip install -r requirements.txt
pip install -r dev/dev.txt
pip install pyblock
# https://github.com/JoonhoLee-Group/ipie/issues/278
pip install "pyscf<=2.3.0"
- name: Install package
run: |
# HACK FOR LEGACY CODE!
export BUILD_LEGACY_IPIE=1; python -m pip install -e .
- name: Test with pytest
run: |
pip install pytest
pip install pytest-xdist
#python -m pytest -n=auto
- name: mpi test
timeout-minutes: 10
run: |
mpiexec --mca btl_tcp_if_include lo --mca oob_tcp_if_include lo -n 2 python -m pytest ipie/legacy/walkers/tests/test_handler.py
mpiexec --mca btl_tcp_if_include lo --mca oob_tcp_if_include lo -n 6 python ipie/estimators/tests/test_generic_chunked.py
mpiexec --mca btl_tcp_if_include lo --mca oob_tcp_if_include lo -n 6 python -m pytest ipie/propagation/tests/test_generic_chunked.py
pytest-no_mpi:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- uses: actions/setup-python@v4
with:
python-version: "3.10"
- name: Install dependencies
run: |
python -m pip install --upgrade pip
pip install -r requirements.txt
pip install pytest-xdist
- name: No mpi4py
run: |
python -c "from ipie.config import MPI; assert \"FakeComm\" in str(MPI.COMM_WORLD)"
python -m pytest -n=auto
integration:
strategy:
fail-fast: false
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- uses: actions/setup-python@v4
with:
python-version: "3.10"
- name: Setup MPI
uses: mpi4py/setup-mpi@v1
with:
mpi: openmpi
- name: Install dependencies
run: |
python -m pip install --upgrade pip
pip install -r requirements.txt
pip install -r dev/dev.txt
- name: Install package
run: |
export BUILD_LEGACY_IPIE=1; python -m pip install -e .
- name: Test Integration
timeout-minutes: 10
run: |
mpiexec --mca btl_tcp_if_include lo --mca oob_tcp_if_include lo -np 4 python -u ipie/qmc/tests/test_mpi_integration.py
examples:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- uses: actions/setup-python@v4
with:
python-version: "3.10"
- name: Install dependencies
run: |
python -m pip install --upgrade pip
pip install -r requirements.txt
pip install pyblock
# https://github.com/JoonhoLee-Group/ipie/issues/278
pip install "pyscf<=2.3.0"
- name: Install package
run: |
python -m pip install -e .
- name: Test Examples
timeout-minutes: 10
run: |
python dev/run_tests.py --examples