diff --git a/.github/workflows/deploy-den.yml b/.github/workflows/deploy-den.yml index ea26535a5..b1c405b3f 100644 --- a/.github/workflows/deploy-den.yml +++ b/.github/workflows/deploy-den.yml @@ -130,7 +130,7 @@ jobs: api_key = os.environ["RENDER_API_KEY"] service_id = os.environ["RENDER_DEN_CONTROL_PLANE_SERVICE_ID"] owner_id = os.environ["RENDER_OWNER_ID"] - openwork_version = os.environ.get("DEN_RENDER_WORKER_OPENWORK_VERSION") or "0.11.145" + openwork_version = os.environ.get("DEN_RENDER_WORKER_OPENWORK_VERSION") worker_plan = os.environ.get("DEN_RENDER_WORKER_PLAN") or "standard" configured_cors_origins = os.environ.get("DEN_CORS_ORIGINS") or "" worker_public_domain_suffix = os.environ.get("DEN_RENDER_WORKER_PUBLIC_DOMAIN_SUFFIX") or "openwork.studio" diff --git a/services/den/src/env.ts b/services/den/src/env.ts index 8d51fb3d8..4c07789e8 100644 --- a/services/den/src/env.ts +++ b/services/den/src/env.ts @@ -1,4 +1,4 @@ -import { z } from "zod" +import { z } from "zod"; const schema = z.object({ DATABASE_URL: z.string().min(1), @@ -39,23 +39,24 @@ const schema = z.object({ POLAR_BENEFIT_ID: z.string().optional(), POLAR_SUCCESS_URL: z.string().optional(), POLAR_RETURN_URL: z.string().optional(), -}) +}); -const parsed = schema.parse(process.env) +const parsed = schema.parse(process.env); function normalizeOrigin(origin: string): string { - const value = origin.trim() + const value = origin.trim(); if (value === "*") { - return value + return value; } - return value.replace(/\/+$/, "") + return value.replace(/\/+$/, ""); } const corsOrigins = parsed.CORS_ORIGINS?.split(",") .map((origin) => normalizeOrigin(origin)) - .filter(Boolean) + .filter(Boolean); -const polarFeatureGateEnabled = (parsed.POLAR_FEATURE_GATE_ENABLED ?? "false").toLowerCase() === "true" +const polarFeatureGateEnabled = + (parsed.POLAR_FEATURE_GATE_ENABLED ?? "false").toLowerCase() === "true"; export const env = { databaseUrl: parsed.DATABASE_URL, @@ -77,17 +78,23 @@ export const env = { apiBase: parsed.RENDER_API_BASE ?? "https://api.render.com/v1", apiKey: parsed.RENDER_API_KEY, ownerId: parsed.RENDER_OWNER_ID, - workerRepo: parsed.RENDER_WORKER_REPO ?? "https://github.com/different-ai/openwork", + workerRepo: + parsed.RENDER_WORKER_REPO ?? "https://github.com/different-ai/openwork", workerBranch: parsed.RENDER_WORKER_BRANCH ?? "dev", - workerRootDir: parsed.RENDER_WORKER_ROOT_DIR ?? "services/den-worker-runtime", + workerRootDir: + parsed.RENDER_WORKER_ROOT_DIR ?? "services/den-worker-runtime", workerPlan: parsed.RENDER_WORKER_PLAN ?? "standard", workerRegion: parsed.RENDER_WORKER_REGION ?? "oregon", - workerOpenworkVersion: parsed.RENDER_WORKER_OPENWORK_VERSION ?? "0.11.113", + workerOpenworkVersion: parsed.RENDER_WORKER_OPENWORK_VERSION, workerNamePrefix: parsed.RENDER_WORKER_NAME_PREFIX ?? "den-worker", workerPublicDomainSuffix: parsed.RENDER_WORKER_PUBLIC_DOMAIN_SUFFIX, - customDomainReadyTimeoutMs: Number(parsed.RENDER_CUSTOM_DOMAIN_READY_TIMEOUT_MS ?? "240000"), + customDomainReadyTimeoutMs: Number( + parsed.RENDER_CUSTOM_DOMAIN_READY_TIMEOUT_MS ?? "240000", + ), provisionTimeoutMs: Number(parsed.RENDER_PROVISION_TIMEOUT_MS ?? "900000"), - healthcheckTimeoutMs: Number(parsed.RENDER_HEALTHCHECK_TIMEOUT_MS ?? "180000"), + healthcheckTimeoutMs: Number( + parsed.RENDER_HEALTHCHECK_TIMEOUT_MS ?? "180000", + ), pollIntervalMs: Number(parsed.RENDER_POLL_INTERVAL_MS ?? "5000"), }, vercel: { @@ -106,4 +113,4 @@ export const env = { successUrl: parsed.POLAR_SUCCESS_URL, returnUrl: parsed.POLAR_RETURN_URL, }, -} +};