From ce944e6bc5e37e91b0eb4ac0561990fa5fdec5f8 Mon Sep 17 00:00:00 2001 From: mtvpls Date: Thu, 18 Jun 2026 13:27:38 +0800 Subject: [PATCH] =?UTF-8?q?=E5=8F=98=E6=9B=B4=E5=91=BD=E4=BB=A4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- edgeone.json | 4 ++-- package.json | 8 +++++--- pnpm-lock.yaml | 3 ++- scripts/edgeone-build.mjs | 26 ++++++++++++++++++++++++++ 4 files changed, 35 insertions(+), 6 deletions(-) create mode 100644 scripts/edgeone-build.mjs diff --git a/edgeone.json b/edgeone.json index 977ada9..1e244ee 100644 --- a/edgeone.json +++ b/edgeone.json @@ -1,8 +1,8 @@ { "$schema": "https://edgeone.ai/schema/edgeone.json", "installCommand": "pnpm install --frozen-lockfile", - "buildCommand": "BUILD_TARGET=edgeone EDGEONE_PAGES=1 pnpm build", - "outputDirectory": ".next", + "buildCommand": "pnpm edgeone:build", + "outputDirectory": ".edgeone", "nodeVersion": "24", "cloudFunctions": { "nodejs": { diff --git a/package.json b/package.json index 483903b..5913e89 100644 --- a/package.json +++ b/package.json @@ -23,11 +23,13 @@ "init:sqlite": "node scripts/init-sqlite.js", "init:postgres": "node scripts/init-postgres.js", "db:reset": "rm -f .data/moontv.db .data/moontv.db-shm .data/moontv.db-wal && node scripts/init-sqlite.js", - "build:edgeone": "BUILD_TARGET=edgeone EDGEONE_PAGES=1 pnpm gen:manifest && BUILD_TARGET=edgeone EDGEONE_PAGES=1 edgeone makers build", + "build:edgeone": "pnpm edgeone:build", "preview:edgeone": "BUILD_TARGET=edgeone EDGEONE_PAGES=1 node scripts/edgeone-local-preview.mjs", - "deploy:edgeone": "BUILD_TARGET=edgeone EDGEONE_PAGES=1 edgeone makers deploy", + "deploy:edgeone": "edgeone makers deploy .edgeone", "edgeone:login": "edgeone login", - "edgeone:link": "edgeone makers link" + "edgeone:link": "edgeone makers link", + "edgeone:build": "node scripts/edgeone-build.mjs", + "deploy:edgeone:auto": "edgeone makers deploy" }, "dependencies": { "@dnd-kit/core": "^6.3.1", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 7bb5f79..a4601a9 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -9406,7 +9406,7 @@ packages: tar@6.2.1: resolution: {integrity: sha512-DZ4yORTwrbTj/7MZYq2w+/ZFdI6OZ/f9SFHR+71gIVUZhOQPHzVCLpvRnPgyaMpfWxxk/4ONva3GQSyNIKRv6A==} engines: {node: '>=10'} - deprecated: Old versions of tar are not supported, and contain widely publicized security vulnerabilities, which have been fixed in the current version. Please update. Support for old versions may be purchased (at exhorbitant rates) by contacting i@izs.me + deprecated: Old versions of tar are not supported, and contain widely publicized security vulnerabilities, which have been fixed in the current version. Please update. Support for old versions may be purchased (at exorbitant rates) by contacting i@izs.me tar@7.5.16: resolution: {integrity: sha512-56adEpPMouktRlBLXiaYFFzZ/3+JXa8P9n7WbR+ibIjtviN55mEaOkiysCnPnWm+7kkui1Dn8J9l+g6zV8731w==} @@ -9415,6 +9415,7 @@ packages: tar@7.5.6: resolution: {integrity: sha512-xqUeu2JAIJpXyvskvU3uvQW8PAmHrtXp2KDuMJwQqW8Sqq0CaZBAQ+dKS3RBXVhU4wC5NjAdKrmh84241gO9cA==} engines: {node: '>=18'} + deprecated: Old versions of tar are not supported, and contain widely publicized security vulnerabilities, which have been fixed in the current version. Please update. Support for old versions may be purchased (at exorbitant rates) by contacting i@izs.me teex@1.0.1: resolution: {integrity: sha512-eYE6iEI62Ni1H8oIa7KlDU6uQBtqr4Eajni3wX7rpfXD8ysFx8z0+dri+KWEPWpBsxXfxu58x/0jvTVT1ekOSg==} diff --git a/scripts/edgeone-build.mjs b/scripts/edgeone-build.mjs new file mode 100644 index 0000000..0846714 --- /dev/null +++ b/scripts/edgeone-build.mjs @@ -0,0 +1,26 @@ +#!/usr/bin/env node +import { spawn } from 'node:child_process'; + +const isInsideEdgeOneBuilder = process.env.NEXT_PRIVATE_STANDALONE === 'true'; + +const command = isInsideEdgeOneBuilder + ? 'BUILD_TARGET=edgeone EDGEONE_PAGES=1 pnpm build' + : 'BUILD_TARGET=edgeone EDGEONE_PAGES=1 edgeone makers build'; + +const child = spawn(command, { + stdio: 'inherit', + shell: true, + env: { + ...process.env, + BUILD_TARGET: 'edgeone', + EDGEONE_PAGES: '1', + }, +}); + +child.on('exit', (code, signal) => { + if (signal) { + process.kill(process.pid, signal); + return; + } + process.exit(code ?? 1); +});