Skip to content

Commit 982b16d

Browse files
authored
[ci] Fix permissions and don't use pull_request_target (#7689)
Defaults permissions to none for all workflows, and only request extra permissions when needed. Similar to facebook/react#32708, prefer the less permissive `pull_request` trigger instead.
1 parent ab18d2f commit 982b16d

File tree

5 files changed

+26
-5
lines changed

5 files changed

+26
-5
lines changed

.github/workflows/analyze.yml

+3-1
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,8 @@ on:
77
- main # change this if your default branch is named differently
88
workflow_dispatch:
99

10+
permissions: {}
11+
1012
jobs:
1113
analyze:
1214
runs-on: ubuntu-latest
@@ -23,7 +25,7 @@ jobs:
2325
- name: Restore cached node_modules
2426
uses: actions/cache@v4
2527
with:
26-
path: "**/node_modules"
28+
path: '**/node_modules'
2729
key: node_modules-${{ runner.arch }}-${{ runner.os }}-${{ hashFiles('yarn.lock') }}
2830

2931
- name: Install deps

.github/workflows/analyze_comment.yml

+3-1
Original file line numberDiff line numberDiff line change
@@ -2,10 +2,12 @@ name: Analyze Bundle (Comment)
22

33
on:
44
workflow_run:
5-
workflows: ["Analyze Bundle"]
5+
workflows: ['Analyze Bundle']
66
types:
77
- completed
88

9+
permissions: {}
10+
911
jobs:
1012
comment:
1113
runs-on: ubuntu-latest

.github/workflows/discord_notify.yml

+6-1
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,17 @@
11
name: Discord Notify
22

33
on:
4-
pull_request_target:
4+
pull_request:
55
types: [opened, ready_for_review]
66

7+
permissions: {}
8+
79
jobs:
810
check_maintainer:
911
uses: facebook/react/.github/workflows/shared_check_maintainer.yml@main
12+
permissions:
13+
# Used by check_maintainer
14+
contents: read
1015
with:
1116
actor: ${{ github.event.pull_request.user.login }}
1217
is_remote: true

.github/workflows/label_core_team_prs.yml

+11-1
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,9 @@
11
name: Label Core Team PRs
22

33
on:
4-
pull_request_target:
4+
pull_request:
5+
6+
permissions: {}
57

68
env:
79
TZ: /usr/share/zoneinfo/America/Los_Angeles
@@ -11,6 +13,9 @@ env:
1113
jobs:
1214
check_maintainer:
1315
uses: facebook/react/.github/workflows/shared_check_maintainer.yml@main
16+
permissions:
17+
# Used by check_maintainer
18+
contents: read
1419
with:
1520
actor: ${{ github.event.pull_request.user.login }}
1621
is_remote: true
@@ -19,6 +24,11 @@ jobs:
1924
if: ${{ needs.check_maintainer.outputs.is_core_team == 'true' }}
2025
runs-on: ubuntu-latest
2126
needs: check_maintainer
27+
permissions:
28+
# Used to add labels on issues
29+
issues: write
30+
# Used to add labels on PRs
31+
pull-requests: write
2232
steps:
2333
- name: Label PR as React Core Team
2434
uses: actions/github-script@v7

.github/workflows/site_lint.yml

+3-1
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,8 @@ on:
77
pull_request:
88
types: [opened, synchronize, reopened]
99

10+
permissions: {}
11+
1012
jobs:
1113
lint:
1214
runs-on: ubuntu-latest
@@ -25,7 +27,7 @@ jobs:
2527
- name: Restore cached node_modules
2628
uses: actions/cache@v4
2729
with:
28-
path: "**/node_modules"
30+
path: '**/node_modules'
2931
key: node_modules-${{ runner.arch }}-${{ runner.os }}-${{ hashFiles('yarn.lock') }}
3032

3133
- name: Install deps

0 commit comments

Comments
 (0)