-
Notifications
You must be signed in to change notification settings - Fork 390
136 lines (129 loc) · 3.46 KB
/
basemap-data.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
name: basemap-data
env:
PKGDIR: "packages/basemap_data"
PIP_DEFAULT_TIMEOUT: 10
PIP_DISABLE_PIP_VERSION_CHECK: 1
PIP_PREFER_BINARY: 1
PIP_RETRIES: 0
PYTHONUNBUFFERED: "1"
PYTHONWARNINGS: "ignore:DEPRECATION"
on:
push:
paths:
- ".github/workflows/basemap-data.yml"
- "packages/basemap_data/**"
pull_request:
paths:
- ".github/workflows/basemap-data.yml"
- "packages/basemap_data/**"
workflow_dispatch:
jobs:
checkout:
runs-on: ubuntu-latest
steps:
-
name: Checkout
uses: actions/checkout@v4
-
name: Upload checkout
uses: actions/upload-artifact@v4
with:
name: checkout
path: .
build:
strategy:
matrix:
python-version:
["3.5"]
max-parallel: 1
needs: checkout
runs-on: ubuntu-latest
container: "pylegacy/python:${{ matrix.python-version }}-debian-10"
steps:
-
name: Download checkout
uses: actions/download-artifact@v4
with:
name: checkout
path: .
-
name: Build sdist and wheel
run: |
cd ${{ env.PKGDIR }}
python setup.py sdist
pip wheel -w dist --no-deps dist/*.zip
-
name: Upload build artifacts
uses: actions/upload-artifact@v4
with:
name: artifacts-build
path: ${{ env.PKGDIR }}/dist
test:
strategy:
matrix:
python-version:
["3.5", "3.6", "3.7", "3.8", "3.9", "3.10", "3.11", "3.12"]
max-parallel: 3
fail-fast: false
needs: build
runs-on: ubuntu-latest
container: "pylegacy/python:${{ matrix.python-version }}-debian-10"
steps:
-
name: Download checkout
uses: actions/download-artifact@v4
with:
name: checkout
path: .
-
name: Download build artifacts
uses: actions/download-artifact@v4
with:
name: artifacts-build
path: ${{ env.PKGDIR }}/dist
-
name: Install package
run: |
pip install ${{ env.PKGDIR }}/dist/*.whl
-
name: Test package
run: |
python -c "from mpl_toolkits import basemap_data; print(basemap_data)"
upload:
strategy:
matrix:
python-version:
["3.5"]
max-parallel: 1
if: startsWith(github.event.ref, 'refs/tags/v')
needs: test
runs-on: ubuntu-latest
container: "pylegacy/python:${{ matrix.python-version }}-debian-10"
environment: PyPI
steps:
-
name: Download build artifacts
uses: actions/download-artifact@v4
with:
name: artifacts-build
path: ${{ env.PKGDIR }}/dist
-
name: Install upload requirements
run: |
pip install twine
-
name: Check distributables
run: |
python -m twine check \
${{ env.PKGDIR }}/dist/*.zip \
${{ env.PKGDIR }}/dist/*.whl
-
name: Upload distributables
env:
TWINE_USERNAME: __token__
TWINE_PASSWORD: "${{ secrets.PYPI_TOKEN }}"
TWINE_REPOSITORY_URL: "${{ secrets.PYPI_REPOSITORY_URL }}"
run: |
python -m twine upload --skip-existing \
${{ env.PKGDIR }}/dist/*.zip \
${{ env.PKGDIR }}/dist/*.whl