I've recently moved away from hosting my own site on a VPS to hosting it on Netlify, and since I'm such a cheap guy - I don't want to constantly waste my free build minutes (of which you only get 300) with every small push I make. GitHub actions to the rescue!
GitHub gives you ~2000 build minutes (though not specified anywhere obvious) for free per repository, which is significantly more, and won't immediately start charging you without warning if you reach that limit, unlike Netlify.
Feel free to modify and use this action to deploy your app to Netlify through Github as well:
name: $ave Dat Money by Fristys
on:
push:
branches: [ master ]
pull_request:
branches: [ master ]
jobs:
build:
runs-on: ubuntu-latest
strategy:
matrix:
node-version: [14.x]
steps:
- uses: actions/checkout@v2
- name: Use Node.js ${{ matrix.node-version }}
uses: actions/setup-node@v1
with:
node-version: ${{ matrix.node-version }}
- name: Install dependencies
run: npm i
- name: Build static site
run: npm run build --if-present
- name: Deploy to Netlify
uses: nwtgck/actions-netlify@v1.1
with:
publish-dir: './dist'
production-branch: master
github-token: ${{ secrets.GH_TOKEN }}
deploy-message: "Deploy from GitHub Actions"
enable-pull-request-comment: false
enable-commit-comment: true
overwrites-pull-request-comment: true
env:
NETLIFY_AUTH_TOKEN: ${{ secrets.NETLIFY_AUTH_TOKEN }}
NETLIFY_SITE_ID: ${{ secrets.NETLIFY_SITE_ID_BETA }}
timeout-minutes: 1