disable-reload.ts 1010 B

12345678910111213141516171819202122232425262728293031323334
  1. import { Database, eq } from "../src/drizzle/index.js"
  2. import { BillingTable } from "../src/schema/billing.sql.js"
  3. import { WorkspaceTable } from "../src/schema/workspace.sql.js"
  4. const workspaceID = process.argv[2]
  5. if (!workspaceID) {
  6. console.error("Usage: bun disable-reload.ts <workspaceID>")
  7. process.exit(1)
  8. }
  9. const billing = await Database.use((tx) =>
  10. tx
  11. .select({ reload: BillingTable.reload })
  12. .from(BillingTable)
  13. .innerJoin(WorkspaceTable, eq(WorkspaceTable.id, BillingTable.workspaceID))
  14. .where(eq(BillingTable.workspaceID, workspaceID))
  15. .then((rows) => rows[0]),
  16. )
  17. if (!billing) {
  18. console.error("Error: Workspace or billing record not found")
  19. process.exit(1)
  20. }
  21. if (!billing.reload) {
  22. console.log(`Reload is already disabled for workspace ${workspaceID}`)
  23. process.exit(0)
  24. }
  25. await Database.use((tx) =>
  26. tx.update(BillingTable).set({ reload: false }).where(eq(BillingTable.workspaceID, workspaceID)),
  27. )
  28. console.log(`Disabled reload for workspace ${workspaceID}`)