summaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorFrank <[email protected]>2025-11-24 15:24:43 -0500
committerFrank <[email protected]>2025-11-24 15:24:44 -0500
commit0ed7fac5fb9034248153c8a7630d397916d159ec (patch)
tree2839696e14c431a7ce3304e560462ec1020f2239
parent80b9cd12923f228c9d27bc65f64c70bcef568bc4 (diff)
downloadopencode-0ed7fac5fb9034248153c8a7630d397916d159ec.tar.gz
opencode-0ed7fac5fb9034248153c8a7630d397916d159ec.zip
wip: zen
-rw-r--r--packages/console/core/package.json1
-rwxr-xr-xpackages/console/core/script/pull-models.ts31
2 files changed, 32 insertions, 0 deletions
diff --git a/packages/console/core/package.json b/packages/console/core/package.json
index 1e0046385..6d139b714 100644
--- a/packages/console/core/package.json
+++ b/packages/console/core/package.json
@@ -30,6 +30,7 @@
"update-models": "script/update-models.ts",
"promote-models-to-dev": "script/promote-models.ts dev",
"promote-models-to-prod": "script/promote-models.ts production",
+ "pull-models-from-dev": "script/pull-models.ts dev",
"typecheck": "tsgo --noEmit"
},
"devDependencies": {
diff --git a/packages/console/core/script/pull-models.ts b/packages/console/core/script/pull-models.ts
new file mode 100755
index 000000000..a89e3951c
--- /dev/null
+++ b/packages/console/core/script/pull-models.ts
@@ -0,0 +1,31 @@
+#!/usr/bin/env bun
+
+import { $ } from "bun"
+import path from "path"
+import { ZenData } from "../src/model"
+
+const stage = process.argv[2]
+if (!stage) throw new Error("Stage is required")
+
+const root = path.resolve(process.cwd(), "..", "..", "..")
+
+// read the secret
+const ret = await $`bun sst secret list --stage ${stage}`.cwd(root).text()
+const lines = ret.split("\n")
+const value1 = lines.find((line) => line.startsWith("ZEN_MODELS1"))?.split("=")[1]
+const value2 = lines.find((line) => line.startsWith("ZEN_MODELS2"))?.split("=")[1]
+const value3 = lines.find((line) => line.startsWith("ZEN_MODELS3"))?.split("=")[1]
+const value4 = lines.find((line) => line.startsWith("ZEN_MODELS4"))?.split("=")[1]
+if (!value1) throw new Error("ZEN_MODELS1 not found")
+if (!value2) throw new Error("ZEN_MODELS2 not found")
+if (!value3) throw new Error("ZEN_MODELS3 not found")
+if (!value4) throw new Error("ZEN_MODELS4 not found")
+
+// validate value
+ZenData.validate(JSON.parse(value1 + value2 + value3 + value4))
+
+// update the secret
+await $`bun sst secret set ZEN_MODELS1 ${value1}`
+await $`bun sst secret set ZEN_MODELS2 ${value2}`
+await $`bun sst secret set ZEN_MODELS3 ${value3}`
+await $`bun sst secret set ZEN_MODELS4 ${value4}`