import { generateHash, generateRandomDomain, type Template, type Schema, generateBase64, } from "../utils"; export function generate(schema: Schema): Template { const mainServiceHash = generateHash(schema.projectName); const randomDomain = generateRandomDomain(schema); const secretBase = generateBase64(64); const toptKeyBase = generateBase64(32); const envs = [ `PLAUSIBLE_HOST=${randomDomain}`, "PLAUSIBLE_PORT=8000", `BASE_URL=http://${randomDomain}`, `SECRET_KEY_BASE=${secretBase}`, `TOTP_VAULT_KEY=${toptKeyBase}`, `HASH=${mainServiceHash}`, ]; const mounts: Template["mounts"] = [ { mountPath: "./clickhouse/clickhouse-config.xml", content: ` warning true `, }, { mountPath: "./clickhouse/clickhouse-user-config.xml", content: ` 0 0 `, }, ]; return { envs, mounts, }; }