diff --git a/.github/workflows/tag_build.yml b/.github/workflows/tag_build.yml new file mode 100644 index 00000000..2daa9941 --- /dev/null +++ b/.github/workflows/tag_build.yml @@ -0,0 +1,46 @@ +name: Tag Build CI + +on: + push: + tags: + - "*" + +jobs: + build-and-push-image: + runs-on: ubuntu-latest + permissions: + contents: read + packages: write + steps: + - name: Get version + id: get_version + run: echo ::set-output name=VERSION::${GITHUB_REF/refs\/tags\//} + + - name: Checkout + uses: actions/checkout@v4 + + - name: Install Node.js + uses: actions/setup-node@v4 + with: + node-version: 18 + + - uses: pnpm/action-setup@v3 + name: Install pnpm + id: pnpm-install + with: + version: 8 + run_install: false + + - name: Build Frontend + run: cd frontend && pnpm install --no-frozen-lockfile && pnpm build:release + + - name: Build Backend + run: cd worker && pnpm install --no-frozen-lockfile && pnpm build + + - name: Upload to Release + uses: softprops/action-gh-release@v2 + with: + files: | + frontend/dist/* + worker/dist/* + tag_name: ${{ steps.get_version.outputs.VERSION }} diff --git a/frontend/package.json b/frontend/package.json index c44574b8..aac148eb 100644 --- a/frontend/package.json +++ b/frontend/package.json @@ -6,8 +6,9 @@ "scripts": { "dev": "vite", "build": "vite build -m prod --emptyOutDir", + "build:release": "vite build -m example --emptyOutDir", "preview": "vite preview", - "deploy": "npm run build && wrangler pages deploy ../dist --branch production" + "deploy": "npm run build && wrangler pages deploy ./dist --branch production" }, "dependencies": { "@vicons/material": "^0.12.0", diff --git a/frontend/vite.config.js b/frontend/vite.config.js index 790bb17a..ca8f397a 100644 --- a/frontend/vite.config.js +++ b/frontend/vite.config.js @@ -13,7 +13,7 @@ import topLevelAwait from "vite-plugin-top-level-await"; // https://vitejs.dev/config/ export default defineConfig({ build: { - outDir: '../dist', + outDir: './dist', }, plugins: [ vue(), diff --git a/worker/package.json b/worker/package.json index 0e744148..7d29b700 100644 --- a/worker/package.json +++ b/worker/package.json @@ -6,7 +6,8 @@ "scripts": { "dev": "wrangler dev", "deploy": "wrangler deploy", - "start": "wrangler dev" + "start": "wrangler dev", + "build": "wrangler deploy --dry-run --outdir dist --minify" }, "devDependencies": { "wrangler": "^3.48.0"