name: Vite Deploy on Release

on:
#   release:
#     types: [published, created, edited, released, prereleased]
  push:
    branches: [main]
  workflow_dispatch:

jobs:
  build:
    name: Build and deploy main
    runs-on: ubuntu-latest

    steps:
      - uses: actions/checkout@v2
      - uses: actions/setup-node@v2.1.5

      - name: Cache node modules
        uses: actions/cache@v2
        with:
          path: ~/node_modules
          key: cache-${{ hashFiles('**/package-lock.json') }}

      - name: Install and build
        run: |
          yarn install
          # pass --base if CNAME is not used
          # npm run build -- --base=/${{ github.event.repository.name }}/
          yarn build
          
          # Enable Vue Router history mode with 404.html hack for Github Pages
          cd dist
          ln -s index.html 404.html
      - name: Deploy to github pages
        uses: JamesIves/github-pages-deploy-action@4.1.0
        with:
          branch: gh-pages
          folder: dist

      - name: Publish deployed code 
        uses: actions/upload-artifact@v2
        with:
          name: published
          path: dist
