1111 - develop
1212
1313jobs :
14+ # これ以降のジョブでキャッシュが使えるようにする
1415 setup :
1516 runs-on : ubuntu-latest
1617 steps :
1718 - name : Checkout code
1819 uses : actions/checkout@v4
1920
20- - name : Set up Python
21+ - &setup-python
22+ name : Set up Python
2123 uses : actions/setup-python@v5
2224 with :
2325 python-version : 3.12
24-
25- - name : Cache virtual environment
26- uses : actions/cache@v4
27- with :
28- path : .venv
29- key : ${{ runner.os }}-venv-${{ hashFiles('**/poetry.lock') }}
30- restore-keys : |
31- ${{ runner.os }}-venv-
32-
33- - name : Install dependencies
34- run : |
35- python -m venv .venv
36- source .venv/bin/activate
37- pip install --upgrade pip
38- pip install poetry
39- poetry install
26+ cache : ' poetry'
4027
4128 ruff-format :
4229 needs : setup
@@ -45,23 +32,13 @@ jobs:
4532 - name : Checkout code
4633 uses : actions/checkout@v4
4734
48- - name : Restore virtual environment cache
49- uses : actions/cache@v4
50- with :
51- path : .venv
52- key : ${{ runner.os }}-venv-${{ hashFiles('**/poetry.lock') }}
53- restore-keys : |
54- ${{ runner.os }}-venv-
35+ - *setup-python
5536
5637 - name : Check ruff version
57- run : |
58- source .venv/bin/activate
59- poetry run ruff --version
38+ run : poetry run ruff --version
6039
6140 - name : Run ruff format check
62- run : |
63- source .venv/bin/activate
64- poetry run ruff format --check .
41+ run : poetry run ruff format --check .
6542
6643 ruff-lint :
6744 needs : setup
@@ -70,26 +47,13 @@ jobs:
7047 - name : Checkout code
7148 uses : actions/checkout@v4
7249
73- - name : Restore virtual environment cache
74- uses : actions/cache@v4
75- with :
76- path : .venv
77- key : ${{ runner.os }}-venv-${{ hashFiles('**/poetry.lock') }}
78- restore-keys : |
79- ${{ runner.os }}-venv-
80-
81- - name : Set up Python environment
82- run : source .venv/bin/activate
50+ - *setup-python
8351
8452 - name : Check ruff version
85- run : |
86- source .venv/bin/activate
87- poetry run ruff --version
53+ run : poetry run ruff --version
8854
8955 - name : Run ruff lint
90- run : |
91- source .venv/bin/activate
92- poetry run ruff check --output-format=github .
56+ run : poetry run ruff check --output-format=github .
9357
9458 mypy-type-check :
9559 needs : setup
@@ -98,23 +62,13 @@ jobs:
9862 - name : Checkout code
9963 uses : actions/checkout@v4
10064
101- - name : Restore virtual environment cache
102- uses : actions/cache@v4
103- with :
104- path : .venv
105- key : ${{ runner.os }}-venv-${{ hashFiles('**/poetry.lock') }}
106- restore-keys : |
107- ${{ runner.os }}-venv-
65+ - *setup-python
10866
10967 - name : Check mypy version
110- run : |
111- source .venv/bin/activate
112- poetry run mypy --version
68+ run : poetry run mypy --version
11369
11470 - name : Run mypy type check
115- run : |
116- source .venv/bin/activate
117- poetry run mypy .
71+ run : poetry run mypy .
11872
11973 pytest :
12074 needs : setup
@@ -123,13 +77,7 @@ jobs:
12377 - name : Checkout code
12478 uses : actions/checkout@v4
12579
126- - name : Restore virtual environment cache
127- uses : actions/cache@v4
128- with :
129- path : .venv
130- key : ${{ runner.os }}-venv-${{ hashFiles('**/poetry.lock') }}
131- restore-keys : |
132- ${{ runner.os }}-venv-
80+ - *setup-python
13381
13482 - name : Run pytest
13583 run : |
0 commit comments