* WIP: enable build releases Will eventually fix #3528 * Build on all branches * WIP: electron-forge publish to gcs * WIP env var * WIP windows * WIP checkout in publish * Back to matrix for build-apps and upstream wasm build * WIP * WIP * WIP * WIP * WIP * WIP * WIP clean up out upload with all dry runs * WIP macos * Clean up * Add update-electron-app * Bump version down to 0.24.11 * Explicit NODE_ENV=production * A snapshot a day keeps the bugs away! 📷🐛 (OS: windows-latest) * A snapshot a day keeps the bugs away! 📷🐛 (OS: windows-latest) * Push dummy version 0.99.99 * Undo * A snapshot a day keeps the bugs away! 📷🐛 (OS: windows-latest) * Trigger CI * Lint * Experiment with DMG and MSI * Split up artifacts * Executable name to Zoo Modeling App * Linux kebab-case exe, autoUpdate on wix * Experiment with electron-builder * WIP * fail-fast false * tronb:vite * DMG and NSIS * Typo * Disable updater for electron-builder tests, quick fix * WIP macOS sign and notarize * WIP Win signing * CSC_FOR_PULL_REQUEST * Comment out signingHashAlgorithms * APPLE_APP_SPECIFIC_PASSWORD and move scripts * notarize: true and change script link * mac.notarize.teamid * Clean up and first steps on auto updater * Lint * Add logs * Work on nsis config * More extensive configs * Clean up * Test push updater * Push again; Fix lint * Bump down to 0.24.11 to test, disable publish * WIP mac updater * Back to .12 to push zips * Back to .11 to test * Back to .12 to push to same dir * Fix windows and names * Back to .11 to test, no publish * A snapshot a day keeps the bugs away! 📷🐛 (OS: windows-latest) * Push again .12 * A snapshot a day keeps the bugs away! 📷🐛 (OS: windows-latest) * Add publisherName as in certificate * Back to 11 build * Add msi target * MSI params * perMarchine: false * .12 msi push * WIP tauri bundle generation (macOS) * Typo * Universal build mac * Test last_update tauri gen for macOS * VERSION fix * Add v to VERSION * Add v to VERSION part 2 * Fix tar * WIP windows updater * WIP windows * Change Compress-Archive to 7z on Windows * 7z change * Fix flag * -mm Deflate * -mm Copy and version .99 * perMachine true * perMachine true * Manual autoUpdater.quitAndInstall * Test NSIS for tauri transition * WIP * No more universal for mac, last_download.json endpoint * Typo in json * Tweaks * A snapshot a day keeps the bugs away! 📷🐛 (OS: ubuntu-latest) * Fix typo in download.json * A snapshot a day keeps the bugs away! 📷🐛 (OS: ubuntu-latest) * Revert "A snapshot a day keeps the bugs away! 📷🐛 (OS: ubuntu-latest)" This reverts commit0d6d67ec2c. * Revert "A snapshot a day keeps the bugs away! 📷🐛 (OS: ubuntu-latest)" This reverts commitb01bc589ab. * A snapshot a day keeps the bugs away! 📷🐛 (OS: ubuntu-latest) * Revert "A snapshot a day keeps the bugs away! 📷🐛 (OS: ubuntu-latest)" This reverts commit5deff7614f. * Fix tauri update json for universal to arch specified * Fix tauri update json for universal to arch specified part 2 * Fix tauri update json for universal to arch specified part 3 * Back to checkUpdateAndNotify, frames on window * Clean up * Default prod env values * CI clean up * More clean up * Override if forge env not set * Make basic-sketch test more robust * Fix env vars set --------- Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com> Co-authored-by: 49lf <ircsurfer33@gmail.com>
		
			
				
	
	
		
			102 lines
		
	
	
		
			2.5 KiB
		
	
	
	
		
			TypeScript
		
	
	
	
	
	
			
		
		
	
	
			102 lines
		
	
	
		
			2.5 KiB
		
	
	
	
		
			TypeScript
		
	
	
	
	
	
import type { ConfigEnv, UserConfig } from 'vite'
 | 
						|
import { defineConfig, mergeConfig } from 'vite'
 | 
						|
import { configDefaults } from 'vitest/config'
 | 
						|
import viteTsconfigPaths from 'vite-tsconfig-paths'
 | 
						|
import vitePluginEslint from 'vite-plugin-eslint'
 | 
						|
import vitePluginPackageVersion from 'vite-plugin-package-version'
 | 
						|
import {
 | 
						|
  getBuildConfig,
 | 
						|
  getBuildDefine,
 | 
						|
  external,
 | 
						|
  pluginHotRestart,
 | 
						|
} from './vite.base.config'
 | 
						|
import viteJsPluginReact from '@vitejs/plugin-react'
 | 
						|
// @ts-ignore: No types available
 | 
						|
import { lezer } from '@lezer/generator/rollup'
 | 
						|
 | 
						|
// https://vitejs.dev/config
 | 
						|
export default defineConfig((env) => {
 | 
						|
  const forgeEnv = env as ConfigEnv<'build'>
 | 
						|
  const { forgeConfigSelf } = forgeEnv
 | 
						|
  const define = getBuildDefine(forgeEnv)
 | 
						|
  const config: UserConfig = {
 | 
						|
    server: {
 | 
						|
      open: true,
 | 
						|
      port: 3000,
 | 
						|
      watch: {
 | 
						|
        ignored: [
 | 
						|
          '**/target/**',
 | 
						|
          '**/dist/**',
 | 
						|
          '**/build/**',
 | 
						|
          '**/test-results/**',
 | 
						|
          '**/playwright-report/**',
 | 
						|
        ],
 | 
						|
      },
 | 
						|
    },
 | 
						|
    test: {
 | 
						|
      globals: true,
 | 
						|
      pool: 'forks',
 | 
						|
      poolOptions: {
 | 
						|
        forks: {
 | 
						|
          maxForks: 2,
 | 
						|
          minForks: 1,
 | 
						|
        },
 | 
						|
      },
 | 
						|
      setupFiles: ['src/setupTests.ts', '@vitest/web-worker'],
 | 
						|
      environment: 'happy-dom',
 | 
						|
      coverage: {
 | 
						|
        provider: 'v8',
 | 
						|
      },
 | 
						|
      exclude: [...configDefaults.exclude, '**/e2e/**/*'],
 | 
						|
      deps: {
 | 
						|
        optimizer: {
 | 
						|
          web: {
 | 
						|
            include: ['vitest-canvas-mock'],
 | 
						|
          },
 | 
						|
        },
 | 
						|
      },
 | 
						|
      clearMocks: true,
 | 
						|
      restoreMocks: true,
 | 
						|
      mockReset: true,
 | 
						|
      reporters: process.env.GITHUB_ACTIONS
 | 
						|
        ? ['dot', 'github-actions']
 | 
						|
        : ['verbose', 'hanging-process'],
 | 
						|
      testTimeout: 1000,
 | 
						|
      hookTimeout: 1000,
 | 
						|
      teardownTimeout: 1000,
 | 
						|
    },
 | 
						|
    build: {
 | 
						|
      lib: {
 | 
						|
        entry: forgeConfigSelf?.entry ?? 'src/main.ts',
 | 
						|
        fileName: () => '[name].js',
 | 
						|
        formats: ['cjs'],
 | 
						|
      },
 | 
						|
      rollupOptions: {
 | 
						|
        external,
 | 
						|
      },
 | 
						|
    },
 | 
						|
    resolve: {
 | 
						|
      // Load the Node.js entry.
 | 
						|
      mainFields: ['module', 'jsnext:main', 'jsnext'],
 | 
						|
      alias: {
 | 
						|
        '@kittycad/codemirror-lsp-client':
 | 
						|
          '/packages/codemirror-lsp-client/src',
 | 
						|
      },
 | 
						|
    },
 | 
						|
    plugins: [
 | 
						|
      pluginHotRestart('restart'),
 | 
						|
      viteJsPluginReact(),
 | 
						|
      viteTsconfigPaths(),
 | 
						|
      vitePluginEslint(),
 | 
						|
      vitePluginPackageVersion(),
 | 
						|
      lezer(),
 | 
						|
    ],
 | 
						|
    worker: {
 | 
						|
      plugins: () => [viteTsconfigPaths()],
 | 
						|
    },
 | 
						|
    define,
 | 
						|
  }
 | 
						|
 | 
						|
  return mergeConfig(getBuildConfig(forgeEnv), config)
 | 
						|
})
 |