-
-
Notifications
You must be signed in to change notification settings - Fork 8
159 lines (148 loc) · 4.49 KB
/
main.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
name: python-package
on:
push:
branches: [master]
pull_request:
branches: [master]
jobs:
pkg-install:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- name: Set up Python 3.7
uses: actions/setup-python@v1
with:
python-version: 3.7
architecture: x64
- name: Cache python modules
uses: actions/cache@v2
with:
path: ~/.cache/pip
key: ${{ runner.os }}-pkg-deps-${{ hashFiles('requirements.txt') }}-${{ hashFiles('**/*.py') }}
restore-keys: |
${{ runner.os }}-pkg-deps-${{ hashFiles('requirements.txt') }}-
${{ runner.os }}-pkg-deps-
${{ runner.os }}-
- name: Install package
run: |
sudo apt install libspatialindex-dev python3-rtree
python -m pip install --upgrade pip
pip install -e .
macos-build:
runs-on: macos-latest
steps:
- uses: actions/checkout@v2
- name: Set up Python 3.7
uses: actions/setup-python@v1
with:
python-version: 3.7
architecture: x64
- name: Install package
run: |
brew install spatialindex
python -m pip install --upgrade pip
pip install Rtree>=0.9.4
pip install -e .
pkg-test:
runs-on: ubuntu-latest
needs: pkg-install
steps:
- uses: actions/checkout@v2
- name: Set up Python 3.7
uses: actions/setup-python@v1
with:
python-version: 3.7
architecture: x64
- name: Cache python modules
uses: actions/cache@v2
with:
path: ~/.cache/pip
key: ${{ runner.os }}-pkg-deps-${{ hashFiles('requirements.txt') }}-${{ hashFiles('**/*.py') }}
restore-keys: |
${{ runner.os }}-pkg-deps-${{ hashFiles('requirements.txt') }}-
${{ runner.os }}-pkg-deps-
${{ runner.os }}-
- name: Install dependencies
run: |
sudo apt install libspatialindex-dev python3-rtree
python -m pip install --upgrade pip
pip install -e .
pip install -r .github/workflows/requirements.txt
- name: Run unittests
env:
CDS_UID: ${{ secrets.CDS_UID }}
CDS_API_KEY: ${{ secrets.CDS_API_KEY }}
GDRIVE_CREDENTIALS: ${{ secrets.GDRIVE_CREDENTIALS}}
run: |
mkdir -p .dvc/tmp
echo "$GDRIVE_CREDENTIALS" | cat - | base64 -d > .dvc/tmp/credentials.json
coverage run -m unittest discover test/
coverage xml
- name: Upload coverage to Codecov
uses: codecov/codecov-action@v1
with:
file: ./coverage.xml
flags: unittests
fail_ci_if_error: true
flake8-py3:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- name: Set up Python 3.7
uses: actions/setup-python@v1
with:
python-version: 3.7
architecture: x64
- name: Run flake8
run: |
pip install flake8
flake8 --version
flake8 ./
mypy:
runs-on: ubuntu-latest
name: Mypy
steps:
- uses: actions/checkout@v2
- name: Set up Python 3.7
uses: actions/setup-python@v2
with:
python-version: 3.7
- name: Run mypy
run: |
pip install mypy
python -m pip install --upgrade pip
mypy ./pyro_risks/
docs-build:
runs-on: ubuntu-latest
needs: pkg-install
steps:
- uses: actions/checkout@v2
- name: Set up Python 3.7
uses: actions/setup-python@v1
with:
python-version: 3.7
architecture: x64
- name: Cache python modules
uses: actions/cache@v2
with:
path: ~/.cache/pip
key: ${{ runner.os }}-pkg-deps-${{ hashFiles('requirements.txt') }}-${{ hashFiles('**/*.py') }}
restore-keys: |
${{ runner.os }}-pkg-deps-${{ hashFiles('requirements.txt') }}-
${{ runner.os }}-pkg-deps-
${{ runner.os }}-
- name: Install dependencies
run: |
sudo apt install libspatialindex-dev python3-rtree
python -m pip install --upgrade pip
pip install -e .
pip install -r docs/requirements.txt
- name: Build documentation
run: |
sphinx-build docs/source docs/build -a -v
black:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- uses: actions/setup-python@v2
- uses: psf/black@stable