Skip to content

Commit 133aac3

Browse files
committed
chore: update CI workflows to use specific action versions
- Changed actions in CI workflows to use specific commit SHA versions for better stability and predictability. - Updated `actions/checkout`, `actions/setup-python`, `snok/install-poetry`, `actions/cache`, `codecov/codecov-action`, and `actions/upload-artifact` to their respective commit SHA references. - Added a step to add Poetry to the PATH in multiple workflows to ensure it is accessible during the build process. These changes aim to enhance the reliability of the CI/CD pipeline and ensure consistent behavior across different runs.
1 parent 0a12a3f commit 133aac3

File tree

3 files changed

+41
-32
lines changed

3 files changed

+41
-32
lines changed

.github/workflows/cd_pypi.yaml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -8,8 +8,8 @@ jobs:
88
build:
99
runs-on: ubuntu-latest
1010
steps:
11-
- uses: actions/checkout@v3
11+
- uses: actions/checkout@f43a0e5ff2bd294095638e18286ca9a3d1956744 # v3
1212
- name: Build and publish to PyPI
13-
uses: JRubics/[email protected]
13+
uses: JRubics/poetry-publish@b71e946be561eaf8bfb7562ecc97c26fb8583070 # v1.17
1414
with:
1515
pypi_token: ${{ secrets.PYPI_TOKEN }}

.github/workflows/ci_prepare.yml

Lines changed: 30 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -14,22 +14,23 @@ jobs:
1414

1515
steps:
1616
- name: Checkout code
17-
uses: actions/checkout@v4
17+
uses: actions/checkout@08eba0b27e820071cde6df949e0beb9ba4906955 # v4
1818

1919
- name: Set up Python
20-
uses: actions/setup-python@v5
21-
with:
22-
python-version: "3.11"
20+
uses: actions/setup-python@a26af69be951a213d495a4c3e4e4022e16d87065 # v5
2321

2422
- name: Install Poetry
25-
uses: snok/install-poetry@v1
23+
uses: snok/install-poetry@76e04a911780d5b312d89783f7b1cd627778900a # v1
2624
with:
2725
version: latest
2826
virtualenvs-create: false
2927
installer-parallel: true
3028

29+
- name: Add Poetry to PATH
30+
run: echo "$HOME/.local/bin" >> $GITHUB_PATH
31+
3132
- name: Load cached Poetry dependencies
32-
uses: actions/cache@v4
33+
uses: actions/cache@0057852bfaa89a56745cba8c7296529d2fc39830 # v4
3334
id: cache
3435
with:
3536
path: ~/.cache/pypoetry
@@ -60,22 +61,23 @@ jobs:
6061

6162
steps:
6263
- name: Checkout code
63-
uses: actions/checkout@v4
64+
uses: actions/checkout@08eba0b27e820071cde6df949e0beb9ba4906955 # v4
6465

6566
- name: Set up Python
66-
uses: actions/setup-python@v5
67-
with:
68-
python-version: "3.11"
67+
uses: actions/setup-python@a26af69be951a213d495a4c3e4e4022e16d87065 # v5
6968

7069
- name: Install Poetry
71-
uses: snok/install-poetry@v1
70+
uses: snok/install-poetry@76e04a911780d5b312d89783f7b1cd627778900a # v1
7271
with:
7372
version: latest
7473
virtualenvs-create: false
7574
installer-parallel: true
7675

76+
- name: Add Poetry to PATH
77+
run: echo "$HOME/.local/bin" >> $GITHUB_PATH
78+
7779
- name: Load cached Poetry dependencies
78-
uses: actions/cache@v4
80+
uses: actions/cache@0057852bfaa89a56745cba8c7296529d2fc39830 # v4
7981
with:
8082
path: ~/.cache/pypoetry
8183
key: ${{ runner.os }}-poetry-${{ hashFiles('**/poetry.lock') }}
@@ -106,23 +108,26 @@ jobs:
106108

107109
steps:
108110
- name: Checkout code
109-
uses: actions/checkout@v4
111+
uses: actions/checkout@08eba0b27e820071cde6df949e0beb9ba4906955 # v4
110112

111113
- name: Set up Python ${{ matrix.python-version }}
112-
uses: actions/setup-python@v5
114+
uses: actions/setup-python@a26af69be951a213d495a4c3e4e4022e16d87065 # v5
113115
with:
114116
python-version: ${{ matrix.python-version }}
115117
cache: "poetry"
116118

117119
- name: Install Poetry
118-
uses: snok/install-poetry@v1
120+
uses: snok/install-poetry@76e04a911780d5b312d89783f7b1cd627778900a # v1
119121
with:
120122
version: latest
121123
virtualenvs-create: false
122124
installer-parallel: true
123125

126+
- name: Add Poetry to PATH
127+
run: echo "$HOME/.local/bin" >> $GITHUB_PATH
128+
124129
- name: Load cached Poetry dependencies
125-
uses: actions/cache@v4
130+
uses: actions/cache@0057852bfaa89a56745cba8c7296529d2fc39830 # v4
126131
id: cache
127132
with:
128133
path: ~/.cache/pypoetry
@@ -145,7 +150,7 @@ jobs:
145150
146151
- name: Upload coverage to Codecov
147152
if: matrix.python-version == '3.11'
148-
uses: codecov/codecov-action@v4
153+
uses: codecov/codecov-action@b9fd7d16f6d7d1b5d2bec1a2887e65ceed900238 # v4
149154
with:
150155
files: ./coverage.xml
151156
flags: unittests
@@ -154,7 +159,7 @@ jobs:
154159

155160
- name: Upload coverage reports
156161
if: matrix.python-version == '3.11'
157-
uses: actions/upload-artifact@v4
162+
uses: actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02 # v4
158163
with:
159164
name: coverage-report-${{ matrix.python-version }}
160165
path: htmlcov/
@@ -167,22 +172,23 @@ jobs:
167172

168173
steps:
169174
- name: Checkout code
170-
uses: actions/checkout@v4
175+
uses: actions/checkout@08eba0b27e820071cde6df949e0beb9ba4906955 # v4
171176

172177
- name: Set up Python
173-
uses: actions/setup-python@v5
174-
with:
175-
python-version: "3.11"
178+
uses: actions/setup-python@a26af69be951a213d495a4c3e4e4022e16d87065 # v5
176179

177180
- name: Install Poetry
178-
uses: snok/install-poetry@v1
181+
uses: snok/install-poetry@76e04a911780d5b312d89783f7b1cd627778900a # v1
179182
with:
180183
version: latest
181184
virtualenvs-create: false
182185
installer-parallel: true
183186

187+
- name: Add Poetry to PATH
188+
run: echo "$HOME/.local/bin" >> $GITHUB_PATH
189+
184190
- name: Load cached Poetry dependencies
185-
uses: actions/cache@v4
191+
uses: actions/cache@0057852bfaa89a56745cba8c7296529d2fc39830 # v4
186192
with:
187193
path: ~/.cache/pypoetry
188194
key: ${{ runner.os }}-poetry-${{ hashFiles('**/poetry.lock') }}

.github/workflows/documentation.yml

Lines changed: 9 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -17,23 +17,26 @@ jobs:
1717

1818
steps:
1919
- name: Checkout code
20-
uses: actions/checkout@v4
20+
uses: actions/checkout@08eba0b27e820071cde6df949e0beb9ba4906955 # v4
2121

2222
- name: Set up Python
23-
uses: actions/setup-python@v5
23+
uses: actions/setup-python@a26af69be951a213d495a4c3e4e4022e16d87065 # v5
2424
with:
2525
python-version: "3.11"
2626
cache: "poetry"
2727

2828
- name: Install Poetry
29-
uses: snok/install-poetry@v1
29+
uses: snok/install-poetry@76e04a911780d5b312d89783f7b1cd627778900a # v1
3030
with:
3131
version: latest
3232
virtualenvs-create: false
3333
installer-parallel: true
3434

35+
- name: Add Poetry to PATH
36+
run: echo "$HOME/.local/bin" >> $GITHUB_PATH
37+
3538
- name: Load cached Poetry dependencies
36-
uses: actions/cache@v4
39+
uses: actions/cache@0057852bfaa89a56745cba8c7296529d2fc39830 # v4
3740
with:
3841
path: ~/.cache/pypoetry
3942
key: ${{ runner.os }}-poetry-${{ hashFiles('**/poetry.lock') }}
@@ -49,9 +52,9 @@ jobs:
4952
poetry run mkdocs build --strict
5053
5154
- name: Deploy to GitHub Pages
52-
uses: peaceiris/actions-gh-pages@v4
55+
uses: peaceiris/actions-gh-pages@e9c66a37f080288a11235e32cbe2dc5fb3a679cc # v4
5356
with:
5457
github_token: ${{ secrets.GITHUB_TOKEN }}
5558
publish_dir: ./site
5659
cname: northpowered.github.io
57-
keep_files: false
60+
keep_files: false

0 commit comments

Comments
 (0)