Skip to content

Commit e275017

Browse files
authored
CI caching. (#1796)
1 parent c7a4eac commit e275017

File tree

1 file changed

+27
-54
lines changed

1 file changed

+27
-54
lines changed

.github/workflows/ci.yml

Lines changed: 27 additions & 54 deletions
Original file line numberDiff line numberDiff line change
@@ -18,45 +18,33 @@ on:
1818

1919
jobs:
2020
linters:
21-
name: Linters
22-
runs-on: ubuntu-latest
21+
name: Linters - ${{ matrix.os.on }} - ${{ matrix.python.version }}
22+
runs-on: ${{ matrix.os.on }}
2323
timeout-minutes: 10
2424
strategy:
2525
fail-fast: false
26+
matrix:
27+
os:
28+
- on: ubuntu-latest
29+
# - on: macos-latest
30+
# - on: windows-latest
31+
python:
32+
- version: '3.8'
33+
- version: '3.9'
34+
- version: '3.10'
35+
- version: '3.11'
2636
steps:
27-
- name: Checkout repository
28-
uses: actions/checkout@v3
29-
30-
- name: Set up python
31-
uses: actions/setup-python@v4
32-
with:
33-
python-version: 3.8
34-
35-
- name: venv restore
36-
id: cache-venv
37-
uses: syphar/restore-virtualenv@v1
37+
- uses: actions/checkout@v3
38+
- uses: actions/setup-python@v4
3839
with:
39-
requirement_files: requirements.txt
40-
41-
- name: venv create
42-
if: steps.cache-venv.outputs.cache-hit != 'true'
43-
run: pip install -e . -r requirements.txt
44-
45-
- name: codespell
46-
run: codespell
47-
48-
- name: pylint
49-
run: pylint --recursive=y examples pymodbus test
50-
51-
- name: precommit (black, bandit, and ruff)
52-
run: pre-commit run --all-files
53-
54-
- name: docs
55-
run: cd doc; ./build_html
56-
57-
- name: mypy
58-
run: mypy pymodbus
59-
40+
python-version: ${{ matrix.python.version }}
41+
cache: 'pip'
42+
- run: pip install -e . -r requirements.txt
43+
- run: codespell
44+
- run: pylint --recursive=y examples pymodbus test
45+
- run: pre-commit run --all-files
46+
- run: cd doc; ./build_html
47+
- run: mypy pymodbus
6048

6149
integreation_test:
6250
name: pytest - ${{ matrix.os.on }} - ${{ matrix.python.version }}
@@ -75,40 +63,25 @@ jobs:
7563
- version: '3.10'
7664
- version: '3.11'
7765
steps:
78-
- name: Checkout repository
79-
uses: actions/checkout@v3
80-
81-
- name: Set up ${{ matrix.python.version }}
82-
uses: actions/setup-python@v4
66+
- uses: actions/checkout@v3
67+
- uses: actions/setup-python@v4
8368
with:
8469
python-version: ${{ matrix.python.version }}
70+
cache: 'pip'
71+
- run: pip install -e . -r requirements.txt
8572

86-
- name: venv restore
87-
id: cache-venv
88-
uses: syphar/restore-virtualenv@v1
89-
with:
90-
requirement_files: requirements.txt
91-
92-
- name: venv create
93-
if: steps.cache-venv.outputs.cache-hit != 'true'
94-
run: pip install -e . -r requirements.txt
95-
96-
- name: pytest
97-
run: pytest -n0 -v --full-trace --timeout=1200
73+
- run: pytest -n0 -v --full-trace --timeout=1200
9874

9975
analyze:
10076
name: Analyze Python
10177
runs-on: ubuntu-22.04
10278

10379
steps:
10480
- uses: actions/checkout@v3
105-
10681
- uses: github/codeql-action/init@v2
10782
with:
10883
languages: python
109-
11084
- uses: github/codeql-action/autobuild@v2
111-
11285
- uses: github/codeql-action/analyze@v2
11386

11487
ci_complete:

0 commit comments

Comments
 (0)