How to skip steps or jobs in GitHub Actions for PRs from forks
Encrypted secrets in GitHub actions aren't available for builds from forks, so if your build script includes PRs, like Avatar:
1
on:
2
push:
3
branches: [ main, dev, 'feature/*', 'rel/*' ]
4
pull_request:
5
types: [opened, synchronize, reopened]
Copied!
You may need to limit steps or entire jobs from running when PRs are coming from forks due to missing secrets (i.e. pushing an output package to a CI nuget feed, say).
The "magic" thing is to use an if condition with the following expression:
1
push:
2
name: push nuget.ci
3
runs-on: ubuntu-latest
4
needs: [build, acceptance]
5
if: ${{ !github.event.pull_request.head.repo.fork }}
6
steps:
Copied!
Note that in the above case, an entire job is skipped, but you can also apply it to a step instead.
Last modified 1mo ago
Copy link