Skip to content

Commit c61655a

Browse files
feat: Add check-actions-security action (#352)
Co-authored-by: pyansys-ci-bot <[email protected]>
1 parent fdb5369 commit c61655a

File tree

3 files changed

+69
-20
lines changed

3 files changed

+69
-20
lines changed

.github/workflows/ci_cd.yml

Lines changed: 45 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
name: CI
22
on:
3+
workflow_dispatch:
34
pull_request:
45
push:
56
tags:
@@ -16,6 +17,8 @@ concurrency:
1617
group: ${{ github.workflow }}-${{ github.ref }}
1718
cancel-in-progress: true
1819

20+
permissions: {}
21+
1922
jobs:
2023
update-changelog:
2124
name: "Update CHANGELOG for new tag"
@@ -25,7 +28,7 @@ jobs:
2528
contents: write
2629
pull-requests: write
2730
steps:
28-
- uses: ansys/actions/doc-deploy-changelog@main
31+
- uses: ansys/actions/doc-deploy-changelog@c2fa7c93f6883114e0e643599431b33d29f0b13f # v10.1.4
2932
with:
3033
token: ${{ secrets.PYANSYS_CI_BOT_TOKEN }}
3134
release-from-main: true
@@ -35,41 +38,62 @@ jobs:
3538
check-vulnerabilities:
3639
name: "Check library vulnerabilities"
3740
runs-on: ubuntu-latest
41+
permissions:
42+
contents: read
3843
steps:
39-
- uses: ansys/actions/check-vulnerabilities@v10.0
44+
- uses: ansys/actions/check-vulnerabilities@c2fa7c93f6883114e0e643599431b33d29f0b13f # v10.1.4
4045
with:
4146
python-version: ${{ env.MAIN_PYTHON_VERSION }}
4247
token: ${{ secrets.PYANSYS_CI_BOT_TOKEN }}
4348
python-package-name: ${{ env.LIBRARY_NAME }}
4449
dev-mode: ${{ github.ref != 'refs/heads/main' }}
4550

51+
actions-security:
52+
name: "Check actions security"
53+
runs-on: ubuntu-latest
54+
permissions:
55+
contents: read
56+
steps:
57+
- uses: ansys/actions/check-actions-security@c2fa7c93f6883114e0e643599431b33d29f0b13f # v10.1.4
58+
with:
59+
generate-summary: true
60+
token: ${{ secrets.GITHUB_TOKEN }}
61+
auditing-level: 'high'
62+
trust-ansys-actions: true
63+
4664
style:
4765
name: Code style
4866
runs-on: ubuntu-latest
67+
permissions:
68+
contents: read
4969
steps:
5070
- name: PyAnsys code style checks
51-
uses: ansys/actions/code-style@v10
71+
uses: ansys/actions/code-style@c2fa7c93f6883114e0e643599431b33d29f0b13f # v10.1.4
5272
with:
5373
python-version: ${{ env.MAIN_PYTHON_VERSION }}
5474

5575
doc-style:
5676
name: "Documentation style"
5777
runs-on: ubuntu-latest
78+
permissions:
79+
contents: read
5880
steps:
59-
- uses: ansys/actions/doc-style@v10
81+
- uses: ansys/actions/doc-style@c2fa7c93f6883114e0e643599431b33d29f0b13f # v10.1.4
6082
with:
6183
token: ${{ secrets.GITHUB_TOKEN }}
6284

6385
smoke-tests:
6486
name: "Build and Smoke tests"
6587
runs-on: ${{ matrix.os }}
88+
permissions:
89+
contents: read
6690
strategy:
6791
fail-fast: false
6892
matrix:
6993
os: [ubuntu-latest, windows-latest]
7094
python-version: ['3.10', '3.11', '3.12', '3.13']
7195
steps:
72-
- uses: ansys/actions/build-wheelhouse@v10
96+
- uses: ansys/actions/build-wheelhouse@c2fa7c93f6883114e0e643599431b33d29f0b13f # v10.1.4
7397
with:
7498
library-name: ${{ env.LIBRARY_NAME }}
7599
operating-system: ${{ matrix.os }}
@@ -79,13 +103,15 @@ jobs:
79103
name: "Tests"
80104
runs-on: ${{ matrix.os }}
81105
needs: [smoke-tests]
106+
permissions:
107+
contents: read
82108
strategy:
83109
matrix:
84110
os: [ubuntu-latest, windows-latest]
85111
python-version: ['3.10', '3.11', '3.12', '3.13']
86112
fail-fast: false
87113
steps:
88-
- uses: ansys/actions/tests-pytest@v10
114+
- uses: ansys/actions/tests-pytest@c2fa7c93f6883114e0e643599431b33d29f0b13f # v10.1.4
89115
with:
90116
pytest-extra-args: "--cov=ansys.pre_commit_hooks --cov-report=term --cov-report=html:.cov/html"
91117
python-version: ${{ matrix.python-version }}
@@ -94,17 +120,21 @@ jobs:
94120
name: "Build documentation"
95121
runs-on: ubuntu-latest
96122
needs: [doc-style]
123+
permissions:
124+
contents: read
97125
steps:
98-
- uses: ansys/actions/doc-build@v10
126+
- uses: ansys/actions/doc-build@c2fa7c93f6883114e0e643599431b33d29f0b13f # v10.1.4
99127
with:
100128
python-version: ${{ env.MAIN_PYTHON_VERSION }}
101129

102130
build-library:
103131
name: "Build library basic example"
104132
runs-on: ubuntu-latest
105133
needs: [doc-build, tests]
134+
permissions:
135+
contents: read
106136
steps:
107-
- uses: ansys/actions/build-library@v10
137+
- uses: ansys/actions/build-library@c2fa7c93f6883114e0e643599431b33d29f0b13f # v10.1.4
108138
with:
109139
library-name: ${{ env.LIBRARY_NAME }}
110140
python-version: ${{ env.MAIN_PYTHON_VERSION }}
@@ -114,8 +144,10 @@ jobs:
114144
runs-on: ubuntu-latest
115145
needs: [build-library]
116146
if: github.event_name == 'push' && !contains(github.ref, 'refs/tags')
147+
permissions:
148+
contents: write
117149
steps:
118-
- uses: ansys/actions/doc-deploy-dev@v10
150+
- uses: ansys/actions/doc-deploy-dev@c2fa7c93f6883114e0e643599431b33d29f0b13f # v10.1.4
119151
with:
120152
cname: ${{ env.DOCUMENTATION_CNAME }}
121153
token: ${{ secrets.PYANSYS_CI_BOT_TOKEN }}
@@ -147,7 +179,7 @@ jobs:
147179
skip-existing: false
148180

149181
- name: "Release to GitHub"
150-
uses: ansys/actions/release-github@v10
182+
uses: ansys/actions/release-github@c2fa7c93f6883114e0e643599431b33d29f0b13f # v10.1.4
151183
with:
152184
library-name: ${{ env.LIBRARY_NAME }}
153185
token: ${{ secrets.GITHUB_TOKEN }}
@@ -156,9 +188,11 @@ jobs:
156188
name: "Deploy stable documentation"
157189
runs-on: ubuntu-latest
158190
needs: [release]
191+
permissions:
192+
contents: write
159193
if: github.event_name == 'push' && contains(github.ref, 'refs/tags')
160194
steps:
161-
- uses: ansys/actions/doc-deploy-stable@v10
195+
- uses: ansys/actions/doc-deploy-stable@c2fa7c93f6883114e0e643599431b33d29f0b13f # v10.1.4
162196
with:
163197
cname: ${{ env.DOCUMENTATION_CNAME }}
164198
token: ${{ secrets.PYANSYS_CI_BOT_TOKEN }}

.github/workflows/label.yml

Lines changed: 23 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -14,14 +14,21 @@ concurrency:
1414
group: ${{ github.workflow }}-${{ github.ref }}
1515
cancel-in-progress: true
1616

17+
permissions: {}
18+
1719
jobs:
1820

1921
label-syncer:
2022
name: Syncer
2123
runs-on: ubuntu-latest
24+
permissions:
25+
contents: read
26+
pull-requests: write
2227
steps:
23-
- uses: actions/checkout@v5
24-
- uses: micnncim/action-label-syncer@v1
28+
- uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
29+
with:
30+
persist-credentials: false
31+
- uses: micnncim/action-label-syncer@3abd5ab72fda571e69fffd97bd4e0033dd5f495c # v1.3.0
2532
env:
2633
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
2734

@@ -36,44 +43,51 @@ jobs:
3643

3744
# Label based on modified files
3845
- name: Label based on changed files
39-
uses: actions/labeler@v6
46+
uses: actions/labeler@634933edcd8ababfe52f92936142cc22ac488b1b # v6.0.1
4047
with:
4148
repo-token: ${{ secrets.GITHUB_TOKEN }}
4249

4350
# Label based on branch name
44-
- uses: actions-ecosystem/action-add-labels@v1
51+
- uses: actions-ecosystem/action-add-labels@bd52874380e3909a1ac983768df6976535ece7f8 # v1.1.0
4552
if: |
4653
startsWith(github.event.pull_request.head.ref, 'doc') ||
4754
startsWith(github.event.pull_request.head.ref, 'docs')
4855
with:
4956
labels: documentation
57+
github_token: ${{ secrets.GITHUB_TOKEN }}
5058

51-
- uses: actions-ecosystem/action-add-labels@v1
59+
- uses: actions-ecosystem/action-add-labels@bd52874380e3909a1ac983768df6976535ece7f8 # v1.1.0
5260
if: |
5361
startsWith(github.event.pull_request.head.ref, 'maint') ||
5462
startsWith(github.event.pull_request.head.ref, 'no-ci') ||
5563
startsWith(github.event.pull_request.head.ref, 'ci')
5664
with:
5765
labels: maintenance
66+
github_token: ${{ secrets.GITHUB_TOKEN }}
5867

59-
- uses: actions-ecosystem/action-add-labels@v1
68+
- uses: actions-ecosystem/action-add-labels@bd52874380e3909a1ac983768df6976535ece7f8 # v1.1.0
6069
if: startsWith(github.event.pull_request.head.ref, 'feat')
6170
with:
6271
labels: |
6372
enhancement
73+
github_token: ${{ secrets.GITHUB_TOKEN }}
6474

65-
- uses: actions-ecosystem/action-add-labels@v1
75+
- uses: actions-ecosystem/action-add-labels@bd52874380e3909a1ac983768df6976535ece7f8 # v1.1.0
6676
if: |
6777
startsWith(github.event.pull_request.head.ref, 'fix') ||
6878
startsWith(github.event.pull_request.head.ref, 'patch')
6979
with:
7080
labels: bug
81+
github_token: ${{ secrets.GITHUB_TOKEN }}
7182

7283
commenter:
84+
name: "Suggest labels if none applied"
7385
runs-on: ubuntu-latest
86+
permissions:
87+
pull-requests: write
7488
steps:
7589
- name: Suggest to add labels
76-
uses: peter-evans/create-or-update-comment@v4
90+
uses: peter-evans/create-or-update-comment@71345be0265236311c031f5c7866368bd1eff043 # v4.0.0
7791
# Execute only when no labels have been applied to the pull request
7892
if: toJSON(github.event.pull_request.labels.*.name) == '{}'
7993
with:
@@ -95,7 +109,7 @@ jobs:
95109
pull-requests: write
96110
runs-on: ubuntu-latest
97111
steps:
98-
- uses: ansys/actions/doc-changelog@main
112+
- uses: ansys/actions/doc-changelog@c2fa7c93f6883114e0e643599431b33d29f0b13f # v10.1.4
99113
with:
100114
token: ${{ secrets.PYANSYS_CI_BOT_TOKEN }}
101115
use-conventional-commits: true

doc/changelog.d/352.added.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
Add check-actions-security action

0 commit comments

Comments
 (0)