From d08b26f89d3ff9ef2b930567204e10e70dd29087 Mon Sep 17 00:00:00 2001 From: Elio Neto Date: Mon, 13 Jul 2026 12:18:09 -0300 Subject: [PATCH] fix(build): skip embedded web UI build when packages/app directory is missing The packages/app directory was removed in 3b76c8f but the build script still tried to build the web UI from there, causing ENOENT errors in the release pipeline. Gracefully skip embedding when the app directory doesn't exist. --- packages/teamcode/script/build.ts | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/packages/teamcode/script/build.ts b/packages/teamcode/script/build.ts index 7ac37330..87cdf5df 100755 --- a/packages/teamcode/script/build.ts +++ b/packages/teamcode/script/build.ts @@ -61,11 +61,16 @@ const baselineFlag = process.argv.includes("--baseline") const skipInstall = process.argv.includes("--skip-install") const sourcemapsFlag = process.argv.includes("--sourcemaps") const plugin = createSolidTransformPlugin() -const skipEmbedWebUi = process.argv.includes("--skip-embed-web-ui") +const appDir = path.join(import.meta.dirname, "../../app") +const { existsSync } = await import("node:fs") +const skipEmbedWebUi = process.argv.includes("--skip-embed-web-ui") || !existsSync(appDir) const createEmbeddedWebUIBundle = async () => { + if (skipEmbedWebUi) { + console.log(`Web UI directory not found, skipping embedded UI`) + return null + } console.log(`Building Web UI to embed in the binary`) - const appDir = path.join(import.meta.dirname, "../../app") const dist = path.join(appDir, "dist") await $`bun run --cwd ${appDir} build` const files = (await Array.fromAsync(new Bun.Glob("**/*").scan({ cwd: dist }))) @@ -303,7 +308,8 @@ if (Script.release) { // publish step would fail trying to ``gh release edit`` a release that was // never created. const archives = ["./dist/*.zip", "./dist/*.tar.gz"] - const createResult = await $`gh release create v${Script.version} --title "v${Script.version}" --generate-notes ${archives} --repo ${process.env.GH_REPO}`.nothrow() + const createResult = + await $`gh release create v${Script.version} --title "v${Script.version}" --generate-notes ${archives} --repo ${process.env.GH_REPO}`.nothrow() if (createResult.exitCode !== 0) { await $`gh release upload v${Script.version} ${archives} --clobber --repo ${process.env.GH_REPO}`.nothrow() }