-
Notifications
You must be signed in to change notification settings - Fork 81
169 lines (140 loc) · 4.51 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
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
name: CI
on:
push:
branches:
- master
pull_request:
branches:
- master
jobs:
build:
defaults:
run:
shell: bash -l {0}
strategy:
fail-fast: false
matrix:
cfg:
- conda-env: psi
python-version: 3.7
label: Psi4-release
runs-on: ubuntu-latest
- conda-env: psi-nightly
python-version: "3.10"
label: Psi4-nightly
runs-on: ubuntu-latest
- conda-env: torchani
python-version: 3.8
label: ANI
runs-on: ubuntu-latest
- conda-env: openmm
python-version: 3.8
label: OpenMM
runs-on: ubuntu-latest
- conda-env: xtb
python-version: "3.10"
label: xTB
runs-on: ubuntu-latest
- conda-env: qcore
python-version: 3.7
label: QCore
runs-on: ubuntu-latest
- conda-env: nwchem
python-version: 3.8
label: NWChem
runs-on: ubuntu-20.04
# formerly NWChem v6.6 with python-version: 3.6 & runs-on: ubuntu-16.04 but ubuntu env retired by GH Sep 2021
- conda-env: mrchem
python-version: 3.8
label: MRChem
runs-on: ubuntu-latest
- conda-env: adcc
python-version: 3.8
label: ADCC
runs-on: ubuntu-latest
- conda-env: opt-disp
python-version: 3.8
label: optimization-dispersion
runs-on: ubuntu-latest
name: "🐍 ${{ matrix.cfg.python-version }} • ${{ matrix.cfg.label }}" # • ${{ matrix.cfg.runs-on }}"
runs-on: ${{ matrix.cfg.runs-on }}
steps:
- uses: actions/checkout@v2
with:
fetch-depth: 0
- name: Create Environment
uses: conda-incubator/setup-miniconda@v2
with:
activate-environment: test
environment-file: devtools/conda-envs/${{ matrix.cfg.conda-env }}.yaml
python-version: ${{ matrix.cfg.python-version }}
auto-activate-base: false
- name: Special Config - NWChem
if: "(matrix.cfg.label == 'NWChem')"
run: |
sudo apt-get -y install nwchem
- name: Special Config - QCore
if: "(matrix.cfg.label == 'QCore')"
run: |
qcore --accept-license
- name: Special Config - QCEngine Dep
if: "(matrix.cfg.label == 'Psi4-nightly') || (matrix.cfg.label == 'ADCC') || (matrix.cfg.label == 'optimization-dispersion')"
run: |
conda remove qcengine --force
- name: Environment Information
run: |
conda info
conda list --show-channel-urls
- name: Install QCEngine
run: |
python -m pip install . --no-deps
- name: QCEngineRecords
run: |
qcengine info
export QCER_VER=`python -c "import qcengine.testing; print(qcengine.testing.QCENGINE_RECORDS_COMMIT)"`
pip install git+https://github.com/MolSSI/QCEngineRecords.git@${QCER_VER}#egg=qcenginerecords
python -c "import qcengine; print(qcengine.config.global_repr())"
- name: PyTest
run: |
pytest -rws -v --cov=qcengine --color=yes --cov-report=xml qcengine/
- name: CodeCov
uses: codecov/codecov-action@v1
release_sphinx:
needs: [build]
defaults:
run:
shell: bash -l {0}
strategy:
fail-fast: false
matrix:
cfg:
- conda-env: docs-cf
python-version: 3.8
label: Sphinx
runs-on: ubuntu-latest
name: "🐍 ${{ matrix.cfg.python-version }} • ${{ matrix.cfg.label }}"
runs-on: ${{ matrix.cfg.runs-on }}
steps:
- uses: actions/checkout@v2
- name: Create Environment
uses: conda-incubator/setup-miniconda@v2
with:
activate-environment: test
environment-file: devtools/conda-envs/${{ matrix.cfg.conda-env }}.yaml
python-version: ${{ matrix.cfg.python-version }}
auto-activate-base: false
- name: Environment Information
run: |
conda info
conda list --show-channel-urls
- name: Build Documentation
run: |
python -m pip install . --no-deps
cd docs
make html
- name: GitHub Pages Deploy
uses: JamesIves/[email protected]
if: github.event_name == 'push' && github.repository == 'MolSSI/QCEngine' && ( startsWith( github.ref, 'refs/tags/' ) || github.ref == 'refs/heads/master' )
with:
branch: gh-pages
folder: docs/build/html