CI: Filter ci actions by path (#2094)

This commit is contained in:
shamoon 2023-09-30 11:04:23 -07:00 committed by GitHub
parent e890e6c46c
commit 2e6e1d088a
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 45 additions and 4 deletions

View File

@ -23,8 +23,32 @@ env:
jobs:
changes:
runs-on: ubuntu-latest
# Required permissions
permissions:
pull-requests: read
# Set job outputs to values from filter step
outputs:
src: ${{ steps.filter.outputs.src }}
steps:
- uses: dorny/paths-filter@v2
id: filter
with:
filters: |
src:
- 'src/**'
- 'Dockerfile'
- 'docker-entrypoint.sh'
- 'package.json'
- 'package-lock.json'
- 'pnpm-lock.yaml'
- 'tailwind.config.js'
- 'postcss.config.js'
build:
if: github.repository == 'benphelps/homepage'
name: Docker Build & Push
needs: changes
if: needs.changes.outputs.src == 'true' && github.repository == 'benphelps/homepage'
runs-on: self-hosted
permissions:
contents: read

View File

@ -11,9 +11,25 @@ permissions:
contents: write
jobs:
changes:
runs-on: ubuntu-latest
# Required permissions
permissions:
pull-requests: read
# Set job outputs to values from filter step
outputs:
docs: ${{ steps.filter.outputs.docs }}
steps:
- uses: dorny/paths-filter@v2
id: filter
with:
filters: |
docs:
- 'docs/**'
test:
needs: changes
name: Test Build
if: github.repository == 'benphelps/homepage' && github.event_name == 'pull_request'
if: needs.changes.outputs.docs == 'true' && github.repository == 'benphelps/homepage' && github.event_name == 'pull_request'
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
@ -35,8 +51,9 @@ jobs:
- name: Test Docs Build
run: MKINSIDERS=true mkdocs build
deploy:
needs: changes
name: Build & Deploy
if: github.repository == 'benphelps/homepage' && github.event_name != 'pull_request'
if: needs.changes.outputs.docs == 'true' && github.repository == 'benphelps/homepage' && github.event_name != 'pull_request'
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4