Skip to content

Commit 9f23f75

Browse files
committed
setup steps cache
1 parent 53d2bbc commit 9f23f75

1 file changed

Lines changed: 94 additions & 8 deletions

File tree

.github/workflows/checks.yml

Lines changed: 94 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,70 @@ concurrency:
1919
permissions: {} # workflow-level default — deny all
2020

2121
jobs:
22+
# Setup jobs and populate cache
23+
24+
python-env:
25+
runs-on: ubuntu-latest
26+
permissions:
27+
contents: read
28+
steps:
29+
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6
30+
with:
31+
persist-credentials: false
32+
33+
- name: Cache pip and Poetry virtualenv
34+
uses: actions/cache@cdf6c1fa76f9f475f3d7449005a359c84ca0f306 # v5
35+
with:
36+
path: |
37+
~/.cache/pip
38+
~/.cache/pypoetry/virtualenvs
39+
key: ${{ runner.os }}-python-${{ hashFiles('pyproject.toml', 'poetry.lock') }}
40+
41+
- name: Install Poetry
42+
run: pip3 install poetry
43+
44+
- name: Install Python dependencies
45+
run: poetry install --with tokenserver-unit-tests,dev --no-interaction --no-ansi
46+
47+
- name: Display Python Version Info
48+
shell: bash
49+
run: |
50+
if [ "$(which python)" != "" ]; then python --version; fi
51+
uname -a
52+
cat /etc/os-release
53+
54+
rust-env:
55+
runs-on: ubuntu-latest
56+
permissions:
57+
contents: read
58+
steps:
59+
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6
60+
with:
61+
persist-credentials: false
62+
63+
- name: Cache Rust toolchain
64+
uses: actions/cache@cdf6c1fa76f9f475f3d7449005a359c84ca0f306 # v5
65+
with:
66+
path: |
67+
~/.rustup/toolchains
68+
~/.rustup/update-hashes
69+
key: ${{ runner.os }}-rust-toolchain-1.91 # RUST_VER
70+
71+
- name: Install Rust toolchain
72+
run: rustup toolchain install 1.91 --components rustfmt clippy --no-self-update && rustup default 1.91
73+
74+
- name: Install cargo-audit
75+
run: cargo install --locked cargo-audit
76+
77+
- name: Display Rust Version Info
78+
shell: bash
79+
run: |
80+
if [ "$(which rustc)" != "" ]; then rustc --version; fi
81+
uname -a
82+
cat /etc/os-release
83+
2284
python-checks:
85+
needs: python-env
2386
runs-on: ubuntu-latest
2487
permissions:
2588
contents: read
@@ -28,17 +91,25 @@ jobs:
2891
with:
2992
persist-credentials: false
3093

31-
- uses: ./.github/actions/setup-python
94+
- name: Restore pip and Poetry virtualenv
95+
uses: actions/cache@cdf6c1fa76f9f475f3d7449005a359c84ca0f306 # v5
3296
with:
33-
workspace-path: workflow
97+
path: |
98+
~/.cache/pip
99+
~/.cache/pypoetry/virtualenvs
100+
key: ${{ runner.os }}-python-${{ hashFiles('pyproject.toml', 'poetry.lock') }}
101+
102+
- name: Install Poetry
103+
run: pip3 install poetry
34104

35105
- name: Python Format Check
36-
run: make ruff-fmt-chk
106+
run: poetry run ruff format --diff tools
37107

38108
- name: Python Lint Check
39-
run: make ruff-lint
109+
run: poetry run ruff check tools
40110

41111
rust-checks:
112+
needs: rust-env
42113
runs-on: ubuntu-latest
43114
permissions:
44115
contents: read
@@ -47,9 +118,16 @@ jobs:
47118
with:
48119
persist-credentials: false
49120

50-
- uses: ./.github/actions/setup-rust
121+
- name: Restore Rust toolchain
122+
uses: actions/cache@cdf6c1fa76f9f475f3d7449005a359c84ca0f306 # v5
51123
with:
52-
workspace-path: workflow
124+
path: |
125+
~/.rustup/toolchains
126+
~/.rustup/update-hashes
127+
key: ${{ runner.os }}-rust-toolchain-1.91 # RUST_VER
128+
129+
- name: Set Rust toolchain
130+
run: rustup default 1.91
53131

54132
- name: Rust Format Check
55133
run: cargo fmt -- --check
@@ -64,6 +142,7 @@ jobs:
64142
run: make doc-test
65143

66144
clippy:
145+
needs: rust-env
67146
runs-on: ubuntu-latest
68147
permissions:
69148
contents: read
@@ -75,9 +154,16 @@ jobs:
75154
with:
76155
persist-credentials: false
77156

78-
- uses: ./.github/actions/setup-rust
157+
- name: Restore Rust toolchain
158+
uses: actions/cache@cdf6c1fa76f9f475f3d7449005a359c84ca0f306 # v5
79159
with:
80-
workspace-path: workflow
160+
path: |
161+
~/.rustup/toolchains
162+
~/.rustup/update-hashes
163+
key: ${{ runner.os }}-rust-toolchain-1.91 # RUST_VER
164+
165+
- name: Set Rust toolchain
166+
run: rustup default 1.91
81167

82168
- name: Rust Clippy ${{ matrix.target }}
83169
run: make clippy_${{ matrix.target }}

0 commit comments

Comments
 (0)