name: Test and deploy to GitHub Pages on: push: branches: - master permissions: contents: write concurrency: group: gh-pages-workflow cancel-in-progress: true jobs: build: runs-on: ubuntu-latest steps: - name: Checkout uses: actions/checkout@v3 - name: Use Node.js uses: actions/setup-node@v3 with: node-version-file: .nvmrc cache: npm - name: Install dependencies run: npm ci - name: Test before production run: npm test - name: Build tool run: npm run build env: NODE_ENV: production - name: Deploy master to GitHub Pages uses: JamesIves/github-pages-deploy-action@v4 with: folder: dist clean: true single-commit: true