allow anything for hostname closes #265

This commit is contained in:
miloschwartz 2025-03-03 17:11:41 -05:00
parent 93c8236535
commit 5529beaf6e
No known key found for this signature in database

View file

@ -14,12 +14,12 @@ import { passwordSchema } from "@server/auth/passwordSchema";
import stoi from "./stoi"; import stoi from "./stoi";
const portSchema = z.number().positive().gt(0).lte(65535); const portSchema = z.number().positive().gt(0).lte(65535);
const hostnameSchema = z // const hostnameSchema = z
.string() // .string()
.regex( // .regex(
/^(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)$|^(([a-zA-Z0-9]|[a-zA-Z0-9][a-zA-Z0-9\-]*[a-zA-Z0-9])\.)+([A-Za-z]|[A-Za-z][A-Za-z0-9\-]*[A-Za-z0-9])$/ // /^(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)$|^(([a-zA-Z0-9]|[a-zA-Z0-9][a-zA-Z0-9\-]*[a-zA-Z0-9])\.)+([A-Za-z]|[A-Za-z][A-Za-z0-9\-]*[A-Za-z0-9])$/
) // )
.or(z.literal("localhost")); // .or(z.literal("localhost"));
const getEnvOrYaml = (envVar: string) => (valFromYaml: any) => { const getEnvOrYaml = (envVar: string) => (valFromYaml: any) => {
return process.env[envVar] ?? valFromYaml; return process.env[envVar] ?? valFromYaml;
@ -42,9 +42,10 @@ const configSchema = z.object({
.record( .record(
z.string(), z.string(),
z.object({ z.object({
base_domain: hostnameSchema.transform((url) => base_domain: z
url.toLowerCase() .string()
), .nonempty("base_domain must not be empty")
.transform((url) => url.toLowerCase()),
cert_resolver: z.string().optional(), cert_resolver: z.string().optional(),
prefer_wildcard_cert: z.boolean().optional() prefer_wildcard_cert: z.boolean().optional()
}) })
@ -68,7 +69,7 @@ const configSchema = z.object({
const envBaseDomain = process.env.APP_BASE_DOMAIN; const envBaseDomain = process.env.APP_BASE_DOMAIN;
if (envBaseDomain) { if (envBaseDomain) {
return hostnameSchema.safeParse(envBaseDomain).success; return z.string().nonempty().safeParse(envBaseDomain).success;
} }
return true; return true;