Openstatus www.openstatus.dev
at 4c0f4c00a38753a5d0dfd7e7b7b7706dec6f1503 63 lines 2.5 kB view raw
1import { createEnv } from "@t3-oss/env-nextjs"; 2import { z } from "zod"; 3 4import "@openstatus/analytics/env"; 5import "@openstatus/db/env.mjs"; 6 7export const env = createEnv({ 8 server: { 9 TINY_BIRD_API_KEY: z.string().min(1), 10 RESEND_API_KEY: z.string().min(1), 11 QSTASH_CURRENT_SIGNING_KEY: z.string().min(1), 12 QSTASH_NEXT_SIGNING_KEY: z.string().min(1), 13 QSTASH_TOKEN: z.string().min(1), 14 STRIPE_WEBHOOK_SECRET_KEY: z.string(), 15 UNKEY_TOKEN: z.string(), 16 UNKEY_API_ID: z.string(), 17 GCP_PROJECT_ID: z.string(), 18 GCP_LOCATION: z.string(), 19 GCP_CLIENT_EMAIL: z.string(), 20 GCP_PRIVATE_KEY: z.string(), 21 CRON_SECRET: z.string(), 22 EXTERNAL_API_URL: z.url(), 23 CLICKHOUSE_URL: z.string(), 24 CLICKHOUSE_USERNAME: z.string(), 25 CLICKHOUSE_PASSWORD: z.string(), 26 PAGERDUTY_APP_ID: z.string().optional(), 27 SLACK_SUPPORT_WEBHOOK_URL: z.string().optional(), 28 }, 29 client: { 30 NEXT_PUBLIC_STRIPE_PUBLISHABLE_KEY: z.string(), 31 NEXT_PUBLIC_URL: z.string(), 32 NEXT_PUBLIC_SENTRY_DSN: z.string(), 33 NEXT_PUBLIC_OPENPANEL_CLIENT_ID: z.string(), 34 }, 35 runtimeEnv: { 36 NEXT_PUBLIC_OPENPANEL_CLIENT_ID: 37 process.env.NEXT_PUBLIC_OPENPANEL_CLIENT_ID, 38 TINY_BIRD_API_KEY: process.env.TINY_BIRD_API_KEY, 39 RESEND_API_KEY: process.env.RESEND_API_KEY, 40 QSTASH_CURRENT_SIGNING_KEY: process.env.QSTASH_CURRENT_SIGNING_KEY, 41 QSTASH_NEXT_SIGNING_KEY: process.env.QSTASH_NEXT_SIGNING_KEY, 42 QSTASH_TOKEN: process.env.QSTASH_TOKEN, 43 NEXT_PUBLIC_STRIPE_PUBLISHABLE_KEY: 44 process.env.NEXT_PUBLIC_STRIPE_PUBLISHABLE_KEY, 45 STRIPE_WEBHOOK_SECRET_KEY: process.env.STRIPE_WEBHOOK_SECRET_KEY, 46 NEXT_PUBLIC_URL: process.env.NEXT_PUBLIC_URL, 47 NEXT_PUBLIC_SENTRY_DSN: process.env.NEXT_PUBLIC_SENTRY_DSN, 48 UNKEY_TOKEN: process.env.UNKEY_TOKEN, 49 UNKEY_API_ID: process.env.UNKEY_API_ID, 50 GCP_PROJECT_ID: process.env.GCP_PROJECT_ID, 51 GCP_LOCATION: process.env.GCP_LOCATION, 52 GCP_CLIENT_EMAIL: process.env.GCP_CLIENT_EMAIL, 53 GCP_PRIVATE_KEY: process.env.GCP_PRIVATE_KEY, 54 CRON_SECRET: process.env.CRON_SECRET, 55 EXTERNAL_API_URL: process.env.EXTERNAL_API_URL, 56 CLICKHOUSE_URL: process.env.CLICKHOUSE_URL, 57 CLICKHOUSE_USERNAME: process.env.CLICKHOUSE_USERNAME, 58 CLICKHOUSE_PASSWORD: process.env.CLICKHOUSE_PASSWORD, 59 PAGERDUTY_APP_ID: process.env.PAGERDUTY_APP_ID, 60 SLACK_SUPPORT_WEBHOOK_URL: process.env.SLACK_SUPPORT_WEBHOOK_URL, 61 }, 62 skipValidation: true, 63});