11# This file is managed by 'repo_helper'. Don't edit it directly.
22---
3- name : Linux Tests
3+ name : Linux
44
55on :
66 push :
99
1010jobs :
1111 tests :
12- name : " Python ${{ matrix.python-version }}"
13- runs-on : " ubuntu-18.04"
12+ name : " ubuntu-20.04 / Python ${{ matrix.config.python-version }}"
13+ runs-on : " ubuntu-20.04"
14+ continue-on-error : ${{ matrix.config.experimental }}
1415 env :
15- USING_COVERAGE : ' 3.6,3.7,3.8'
16+ USING_COVERAGE : ' 3.6,3.7,3.8,3.9,3.10.0-alpha.3 '
1617
1718 strategy :
1819 fail-fast : False
1920 matrix :
20- python-version : ["3.6","3.7","3.8"]
21+ config :
22+ - {python-version: "3.6", testenvs: "py36,build", experimental: False}
23+ - {python-version: "3.7", testenvs: "py37,build", experimental: False}
24+ - {python-version: "3.8", testenvs: "py38,build", experimental: False}
25+ - {python-version: "3.9", testenvs: "py39,build", experimental: False}
26+ - {python-version: "3.10.0-alpha.3", testenvs: "py310-dev,build", experimental: True}
2127
2228 steps :
2329 - name : Checkout 🛎️
2430 uses : " actions/checkout@v2"
31+
2532 - name : Setup Python 🐍
2633 uses : " actions/setup-python@v2"
2734 with :
28- python-version : " ${{ matrix.python-version }}"
35+ python-version : " ${{ matrix.config.python-version }}"
36+
2937 - name : Install dependencies 🔧
3038 run : |
3139 python -VV
3240 python -m site
3341 python -m pip install --upgrade pip setuptools wheel
34- python -m pip install --upgrade tox tox-gh-actions virtualenv
42+ python -m pip install --upgrade tox virtualenv
3543 python -m pip install --upgrade coverage_pyver_pragma
3644
37- - name : " Run Tests for Python ${{ matrix.python-version }}"
38- run : " python -m tox"
45+ - name : " Run Tests for Python ${{ matrix.config. python-version }}"
46+ run : python -m tox -e "${{ matrix.config.testenvs }} "
3947
4048
41- - name : " Upload Coverage"
49+ - name : " Upload Coverage 🚀 "
4250 uses : actions/upload-artifact@v2
4351 with :
44- name : " coverage-${{ matrix.python-version }}"
52+ name : " coverage-${{ matrix.config. python-version }}"
4553 path : .coverage
4654
4755
4856 Coverage :
4957 needs : tests
50- runs-on : " ubuntu-18 .04"
58+ runs-on : " ubuntu-20 .04"
5159 steps :
5260 - name : Checkout 🛎️
5361 uses : " actions/checkout@v2"
6270 python -m pip install --upgrade pip setuptools wheel
6371 python -m pip install --upgrade coveralls coverage_pyver_pragma
6472
65- - name : " Download Coverage"
73+ - name : " Download Coverage 🪂 "
6674 uses : actions/download-artifact@v2
6775 with :
6876 path : coverage
@@ -71,12 +79,12 @@ jobs:
7179 run : ls -R
7280 working-directory : coverage
7381
74- - name : Combine Coverage
82+ - name : Combine Coverage 👷
7583 run : |
7684 shopt -s globstar
7785 python -m coverage combine coverage/**/.coverage
7886
79- - name : " Upload Combined Coverage Artefact"
87+ - name : " Upload Combined Coverage Artefact 🚀 "
8088 uses : actions/upload-artifact@v2
8189 with :
8290 name : " combined-coverage"
@@ -91,27 +99,31 @@ jobs:
9199 Deploy :
92100 needs : tests
93101
94- runs-on : " ubuntu-18 .04"
102+ runs-on : " ubuntu-20 .04"
95103 steps :
96104 - name : Checkout 🛎️
97105 uses : " actions/checkout@v2"
106+ if : startsWith(github.ref, 'refs/tags/')
98107
99108 - name : Setup Python 🐍
100109 uses : " actions/setup-python@v2"
101110 with :
102111 python-version : 3.8
112+ if : startsWith(github.ref, 'refs/tags/')
103113
104114 - name : Install dependencies 🔧
105115 run : |
106116 python -m pip install --upgrade pip setuptools wheel
107117 python -m pip install --upgrade tox
118+ if : startsWith(github.ref, 'refs/tags/')
108119
109120 - name : Build distributions 📦
110121 run : |
111122 tox -e build
112123
124+ if : startsWith(github.ref, 'refs/tags/')
113125
114- - name : Upload distribution 📦 to PyPI
126+ - name : Upload distribution to PyPI 🚀
115127 if : startsWith(github.ref, 'refs/tags/')
116128 uses : pypa/gh-action-pypi-publish@master
117129 with :
0 commit comments