name: Build and Deploy on: push: branches: [ main ] jobs: build-and-deploy: runs-on: ubuntu-latest steps: - name: Checkout uses: actions/checkout@v2 with: persist-credentials: false - name: Set up node uses: actions/setup-node@v2 with: node-version: '12' check-latest: true - name: Cache node modules uses: actions/cache@v2 id: cache with: path: node_modules key: ${{ runner.os }}-node-${{ hashFiles('**/package-lock.json') }} restore-keys: | ${{ runner.os }}-node- - name: Install dependencies if: steps.cache.outputs.cache-hit != 'true' run: npm install - name: Build run: npm run build - name: Deploy uses: JamesIves/github-pages-deploy-action@3.7.1 with: ACCESS_TOKEN: ${{ secrets.ACCESS_TOKEN }} BRANCH: gh-pages FOLDER: dist