name: build-checks on: push: pull_request: jobs: build-web: strategy: matrix: os: [ macos, ubuntu, windows ] mode: [ # Vite mode: https://vitejs.dev/guide/env-and-mode.html development, # Used by `dev` command production, # Used by `build` command # Vitest mode: https://vitest.dev/guide/cli.html test, # Used by Vitest ] fail-fast: false # Allows to see results from other combinations runs-on: ${{ matrix.os }}-latest steps: - name: Checkout uses: actions/checkout@v2 - name: Setup node uses: ./.github/actions/setup-node - name: Install dependencies run: npm ci - name: Build run: npm run build -- --mode ${{ matrix.mode }} build-desktop: strategy: matrix: os: [ macos, ubuntu, windows ] mode: [ # electron-vite modes: https://electron-vite.org/guide/env-and-mode.html#global-env-variables development, # Used by `dev` command production, # Used by `build` and `preview` commands ] fail-fast: false # Allows to see results from other combinations runs-on: ${{ matrix.os }}-latest steps: - name: Checkout uses: actions/checkout@v2 - name: Setup node uses: ./.github/actions/setup-node - name: Install dependencies run: npm ci - name: Prebuild run: npm run electron:prebuild -- --mode ${{ matrix.mode }} - name: Build run: npm run electron:build -- --publish never create-icons: strategy: matrix: os: [ macos, ubuntu, windows ] fail-fast: false # Allows to see results from other combinations runs-on: ${{ matrix.os }}-latest steps: - name: Checkout uses: actions/checkout@v2 - name: Setup node uses: ./.github/actions/setup-node - name: Install dependencies run: npm ci - name: Create icons run: npm run icons:build