Skip to content

Commit

Permalink
Add workflow to automatically build for npm changes
Browse files Browse the repository at this point in the history
  • Loading branch information
lucacome committed Apr 24, 2023
1 parent eb3ba23 commit eac7be6
Show file tree
Hide file tree
Showing 2 changed files with 66 additions and 0 deletions.
1 change: 1 addition & 0 deletions .github/workflows/check-dist.yml
Original file line number Diff line number Diff line change
Expand Up @@ -15,6 +15,7 @@ on:
paths-ignore:
- '**.md'
workflow_dispatch:
workflow_call:

jobs:
check-dist:
Expand Down
65 changes: 65 additions & 0 deletions .github/workflows/dependabot-build.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,65 @@
name: Run build for dependabot PRs

on:
pull_request:
types: [opened, synchronize]

permissions:
contents: write
pull-requests: read
jobs:
build:
if: ${{ github.actor == 'dependabot[bot]' }}
runs-on: ubuntu-latest
steps:
- name: Fetch Dependabot metadata
id: dependabot-metadata
uses: dependabot/fetch-metadata@v1

- uses: actions/checkout@v3
if: ${{ steps.dependabot-metadata.outputs.package-ecosystem == 'npm_and_yarn' }}
with:
ref: ${{ github.event.pull_request.head.sha }}

- name: Set up Node.js 16.x
if: ${{ steps.dependabot-metadata.outputs.package-ecosystem == 'npm_and_yarn' }}
uses:
actions/setup-node@v3
with:
node-version: 16.x

- name: Install dependencies
if: ${{ steps.dependabot-metadata.outputs.package-ecosystem == 'npm_and_yarn' }}
run: npm ci

- name: Run build
if: ${{ steps.dependabot-metadata.outputs.package-ecosystem == 'npm_and_yarn' }}
run: |
npm run build
npm run package
- name: If there are changes commit them
id: check
if: ${{ steps.dependabot-metadata.outputs.package-ecosystem == 'npm_and_yarn' }}
run: |
if [ "$(git diff --ignore-space-at-eol dist/ | wc -l)" -gt "0" ]; then
echo "Detected uncommitted changes after build."
exit 1
fi
- uses: oleksiyrudenko/gha-git-credentials@v2.1.1
if: ${{ steps.check.outputs.conclusion == 'failure' }}
with:
token: '${{ secrets.GITHUB_TOKEN }}'

- name: Commit changes
id: commit
run: |
git add dist/
git commit -m "Update dist/ for dependabot"
git push -u origin HEAD:${{ github.event.pull_request.head.ref }}
if: ${{ steps.check.outputs.conclusion == 'success' }}

- name: Call check-dist
if: ${{ steps.commit.outputs.conclusion == 'success' }}
uses: ./.github/workflows/check-dist.yml

0 comments on commit eac7be6

Please sign in to comment.