diff options
Diffstat (limited to 'infra')
| -rw-r--r-- | infra/app.ts | 44 |
1 files changed, 44 insertions, 0 deletions
diff --git a/infra/app.ts b/infra/app.ts new file mode 100644 index 000000000..73b80994d --- /dev/null +++ b/infra/app.ts @@ -0,0 +1,44 @@ +export const domain = (() => { + if ($app.stage === "production") return "opencode.ai" + if ($app.stage === "dev") return "dev.opencode.ai" + return `${$app.stage}.dev.opencode.ai` +})() + +const bucket = new sst.cloudflare.Bucket("Bucket") + +export const api = new sst.cloudflare.Worker("Api", { + domain: `api.${domain}`, + handler: "packages/function/src/api.ts", + url: true, + link: [bucket], + transform: { + worker: (args) => { + args.logpush = true + args.bindings = $resolve(args.bindings).apply((bindings) => [ + ...bindings, + { + name: "SYNC_SERVER", + type: "durable_object_namespace", + className: "SyncServer", + }, + ]) + args.migrations = { + oldTag: "v1", + newTag: "v1", + //newSqliteClasses: ["SyncServer"], + } + }, + }, +}) + +new sst.cloudflare.StaticSite("Web", { + path: "packages/web", + domain, + environment: { + VITE_API_URL: api.url, + }, + build: { + command: "bun run build", + output: "dist", + }, +}) |
