Skip to content

Commit 7932b15

Browse files
committed
Run most of workflow on Ubuntu 20.04, add Python 3.11
1 parent 41ec897 commit 7932b15

File tree

1 file changed

+47
-20
lines changed

1 file changed

+47
-20
lines changed

.github/workflows/main.yml

Lines changed: 47 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -4,67 +4,94 @@ on: [push, pull_request]
44

55
jobs:
66
tests:
7-
runs-on: ubuntu-18.04
7+
runs-on: ubuntu-20.04
88
strategy:
99
fail-fast: false
1010
matrix:
11-
python-version: [2.7, 3.4, 3.5, 3.6, 3.7, 3.8, 3.9, "3.10"]
11+
python-version: [2.7, 3.5, 3.6, 3.7, 3.8, 3.9, "3.10", 3.11]
1212

1313
steps:
14-
- uses: actions/checkout@v2
14+
- uses: actions/checkout@v3
1515

1616
- name: Set up Python ${{ matrix.python-version }}
17-
uses: actions/setup-python@v2
17+
uses: actions/setup-python@v4
1818
with:
1919
python-version: ${{ matrix.python-version }}
2020

21-
- name: Show Python version
22-
run: python -V
21+
- name: Install dependencies
22+
run: pip install virtualenv tox
23+
24+
- name: Set variable for TOXENV based on Python version
25+
id: toxenv
26+
run: python -c 'import sys; print("TOXENV=py%d%d" % (sys.version_info.major, sys.version_info.minor))' | tee -a $GITHUB_OUTPUT
2327

24-
- name: Set TOXENV based on Python version
25-
run: python -c 'import sys; print("TOXENV=py%d%d" % (sys.version_info.major, sys.version_info.minor))' | tee -a $GITHUB_ENV
28+
- name: Run the unit tests
29+
run: TOXENV=${{steps.toxenv.outputs.TOXENV}} tox
30+
31+
- name: Run the end-to-end tests
32+
run: TOXENV=${{steps.toxenv.outputs.TOXENV}} END_TO_END=1 tox
33+
34+
tests_ubuntu_1804:
35+
runs-on: ubuntu-18.04
36+
strategy:
37+
fail-fast: false
38+
matrix:
39+
python-version: [3.4] # not supported by setup-python on ubuntu 20.04
40+
41+
steps:
42+
- uses: actions/checkout@v3
43+
44+
- name: Set up Python ${{ matrix.python-version }}
45+
uses: actions/setup-python@v4
46+
with:
47+
python-version: ${{ matrix.python-version }}
2648

2749
- name: Install dependencies
2850
run: pip install virtualenv tox
2951

52+
- name: Set variable for TOXENV based on Python version
53+
id: toxenv
54+
run: python -c 'import sys; print("TOXENV=py%d%d" % (sys.version_info.major, sys.version_info.minor))' | tee -a $GITHUB_OUTPUT
55+
3056
- name: Run the unit tests
31-
run: tox
57+
run: TOXENV=${{steps.toxenv.outputs.TOXENV}} tox
3258

3359
- name: Run the end-to-end tests
34-
run: END_TO_END=1 tox
60+
run: TOXENV=${{steps.toxenv.outputs.TOXENV}} END_TO_END=1 tox
3561

3662
coverage:
37-
runs-on: ubuntu-18.04
63+
runs-on: ubuntu-20.04
3864
strategy:
3965
fail-fast: false
4066
matrix:
41-
python-version: [2.7, 3.7]
67+
python-version: [2.7, 3.8]
4268

4369
steps:
44-
- uses: actions/checkout@v2
70+
- uses: actions/checkout@v3
4571

4672
- name: Set up Python ${{ matrix.python-version }}
47-
uses: actions/setup-python@v2
73+
uses: actions/setup-python@v4
4874
with:
4975
python-version: ${{ matrix.python-version }}
5076

5177
- name: Install dependencies
5278
run: pip install virtualenv tox
5379

54-
- name: Set TOXENV based on Python version
55-
run: python -c 'import sys; e="cover" if sys.version_info.major == 2 else "cover3"; print("TOXENV=%s" % e)' | tee -a $GITHUB_ENV
80+
- name: Set variable for TOXENV based on Python version
81+
id: toxenv
82+
run: python -c 'import sys; e="cover" if sys.version_info.major == 2 else "cover3"; print("TOXENV=%s" % e)' | tee -a $GITHUB_OUTPUT
5683

5784
- name: Run unit test coverage
58-
run: tox
85+
run: TOXENV=${{steps.toxenv.outputs.TOXENV}} tox
5986

6087
docs:
61-
runs-on: ubuntu-18.04
88+
runs-on: ubuntu-20.04
6289

6390
steps:
64-
- uses: actions/checkout@v2
91+
- uses: actions/checkout@v3
6592

6693
- name: Set up Python ${{ matrix.python-version }}
67-
uses: actions/setup-python@v2
94+
uses: actions/setup-python@v4
6895
with:
6996
python-version: "3.8"
7097

0 commit comments

Comments
 (0)