Skip to content

Commit f270a92

Browse files
authored
Updated CI. (#1181)
Simplify CI and speedup.
1 parent f4e6175 commit f270a92

File tree

3 files changed

+16
-90
lines changed

3 files changed

+16
-90
lines changed

.github/workflows/ci.yml

Lines changed: 14 additions & 89 deletions
Original file line numberDiff line numberDiff line change
@@ -75,6 +75,13 @@ jobs:
7575
matrix: 3.8
7676
implementation: pypy
7777
openssl_msvc_version: 2019
78+
- name: PyPy 3.9
79+
tox: pypy39
80+
action: pypy-3.9
81+
docker: pypy3.9
82+
matrix: 3.9
83+
implementation: pypy
84+
openssl_msvc_version: 2019
7885
arch:
7986
- name: x86
8087
action: x86
@@ -95,62 +102,33 @@ jobs:
95102
matrix: windows
96103
python:
97104
implementation: pypy
98-
arch:
99-
matrix: x64
100105
- os:
101-
matrix: windows
106+
matrix: macos
102107
python:
103108
implementation: pypy
104-
matrix: 3.8
105109
env:
106110
# Should match name above
107111
JOB_NAME: ${{ matrix.task.name }} - ${{ matrix.os.name }} ${{ matrix.python.name }} ${{ matrix.arch.name }}
108112
steps:
109-
- uses: actions/checkout@v2
113+
- uses: actions/checkout@v3
110114
with:
111115
fetch-depth: 0
112116
- name: Set up ${{ matrix.python.name }} (if CPython)
113117
if: ${{ job.container == '' && matrix.python.implementation == 'cpython'}}
114-
uses: actions/setup-python@v2
118+
uses: actions/setup-python@v3
115119
with:
116120
python-version: '${{ matrix.python.action }}.0-alpha - ${{ matrix.python.action }}.X'
117121
architecture: '${{ matrix.arch.action }}'
118122
- name: Set up ${{ matrix.python.name }} (if PyPy)
119123
if: ${{ job.container == '' && matrix.python.implementation == 'pypy'}}
120-
uses: actions/setup-python@v2
124+
uses: actions/setup-python@v3
121125
with:
122126
python-version: '${{ matrix.python.action }}'
123127
architecture: '${{ matrix.arch.action }}'
124128
- name: Install
125129
run: |
126130
pip install --upgrade pip setuptools wheel
127131
pip install --upgrade tox
128-
- name: Add PyPy Externals
129-
if: ${{ matrix.os.matrix == 'windows' && matrix.python.implementation == 'pypy'}}
130-
env:
131-
PYPY_EXTERNALS_PATH: ${{ github.workspace }}/pypy_externals
132-
shell: bash
133-
run: |
134-
echo $PYPY_EXTERNALS_PATH
135-
mkdir --parents $(dirname $PYPY_EXTERNALS_PATH)
136-
hg clone https://foss.heptapod.net/pypy/externals/ $PYPY_EXTERNALS_PATH
137-
dir $PYPY_EXTERNALS_PATH
138-
cd $PYPY_EXTERNALS_PATH && hg update win$(python -c 'import struct; print(struct.calcsize("P") * 8)')_14x
139-
echo "INCLUDE=$PYPY_EXTERNALS_PATH/include;$INCLUDE" >> $GITHUB_ENV
140-
echo "LIB=$PYPY_EXTERNALS_PATH/lib;$LIB" >> $GITHUB_ENV
141-
# echo "CL=${{ matrix.PYTHON.CL_FLAGS }}" >> $GITHUB_ENV
142-
- name: Add Brew
143-
if: ${{ matrix.os.matrix == 'macos' && matrix.python.implementation == 'pypy'}}
144-
shell: bash
145-
run: |
146-
brew install [email protected] rust
147-
echo "LDFLAGS=-L$(brew --prefix [email protected])/lib" >> $GITHUB_ENV
148-
echo "CFLAGS=-I$(brew --prefix [email protected])/include" >> $GITHUB_ENV
149-
- name: rustup
150-
if: ${{ matrix.os.matrix == 'windows' && matrix.python.implementation == 'pypy'}}
151-
shell: bash
152-
run: |
153-
rustup target add i686-pc-windows-msvc
154132
- name: Test
155133
env:
156134
# When compiling Cryptography for PyPy on Windows there is a cleanup
@@ -166,7 +144,7 @@ jobs:
166144
cp coverage.xml "coverage_reports/coverage.${{ env.JOB_NAME }}.xml"
167145
- name: Upload Coverage
168146
if: matrix.task.coverage
169-
uses: actions/upload-artifact@v2
147+
uses: actions/upload-artifact@v3
170148
with:
171149
name: coverage
172150
path: coverage_reports/*
@@ -220,66 +198,14 @@ jobs:
220198
# Should match name above
221199
JOB_NAME: ${{ matrix.task.name }} - ${{ matrix.os.name }} ${{ matrix.python.name }} ${{ matrix.arch.name }}
222200
steps:
223-
- uses: actions/checkout@v2
201+
- uses: actions/checkout@v3
224202
with:
225203
fetch-depth: 0
226204
- name: Install
227205
run: |
228206
pip install --upgrade pip setuptools wheel
229207
pip install --upgrade tox
230-
- name: Test
231-
continue-on-error: ${{ matrix.task.continue_on_error == true }}
232-
run: |
233-
tox -vv -e ${{ matrix.task.tox }}
234-
coverage:
235-
# Should match JOB_NAME below
236-
name: ${{ matrix.task.name }} - ${{ matrix.os.name }} ${{ matrix.python.name }} ${{ matrix.arch.name }}
237-
runs-on: ${{ matrix.os.runs-on }}
238-
if: always()
239-
needs:
240-
- test
241-
container: ${{ matrix.os.container[matrix.python.docker] }}
242-
strategy:
243-
fail-fast: false
244-
matrix:
245-
task:
246-
- name: Coverage
247-
tox: combined-coverage
248-
download_coverage: true
249-
os:
250-
- name: Linux
251-
runs-on: ubuntu-latest
252-
matrix: linux
253-
container:
254-
3.8: docker://python:3.8-buster
255-
python:
256-
- name: CPython 3.8
257-
tox: py38
258-
action: 3.8
259-
docker: 3.8
260-
implementation: cpython
261-
arch:
262-
- name: x64
263-
action: x64
264-
matrix: x64
265-
env:
266-
# Should match name above
267-
JOB_NAME: ${{ matrix.task.name }} - ${{ matrix.os.name }} ${{ matrix.python.name }} ${{ matrix.arch.name }}
268-
steps:
269-
- uses: actions/checkout@v2
270-
with:
271-
fetch-depth: 0
272-
- name: Install
273-
run: |
274-
pip install --upgrade pip setuptools wheel
275-
pip install --upgrade tox
276-
- name: Download Coverage
277-
if: matrix.task.download_coverage
278-
uses: actions/download-artifact@v2
279-
with:
280-
name: coverage
281-
path: coverage_reports
282-
- name: Test
208+
- name: Test format
283209
continue-on-error: ${{ matrix.task.continue_on_error == true }}
284210
run: |
285211
tox -vv -e ${{ matrix.task.tox }}
@@ -288,7 +214,6 @@ jobs:
288214
runs-on: ubuntu-latest
289215
needs:
290216
- check
291-
- coverage
292217
- test
293218
steps:
294219
- name: This

setup.cfg

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -77,6 +77,7 @@ ignore-paths=
7777
examples/common/tornado_twisted,
7878
examples/contrib/tornado_twisted,
7979
examples/contrib/libmodbus_client.py
80+
doc
8081
ignore-patterns=^\.#
8182

8283
# Pickle collected data for later comparisons.

tox.ini

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55

66
[tox]
77
# pypy38 does not work on windows, due to an internal error.
8-
envlist = py{38,39,310,py38}
8+
envlist = py{38,39,310,py38,py39}
99

1010
[testenv]
1111
deps = -r requirements.txt

0 commit comments

Comments
 (0)