summaryrefslogtreecommitdiffhomepage
path: root/infra/app.ts
blob: cc69f616344f1d849b279b2d71620f6a33474815 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
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",
//   },
// })
new sst.cloudflare.x.Astro("Web", {
  domain,
  path: "packages/web",
  environment: {
    VITE_API_URL: api.url,
  },
})