UNPKG

openclaw

Version:

Multi-channel AI gateway with extensible messaging integrations

38 lines (37 loc) 1.73 kB
import { t as isContainerEnvironment } from "./container-environment-CNsJSTpY.js"; import { n as pickPrimaryTailnetIPv4 } from "./tailnet-CVdlmJeO.js"; import { t as defaultGatewayBindMode, v as resolveGatewayRequiredListenHosts } from "./net-DbNPs6Xm.js"; import { t as LOOPBACK_PORT_PROBE_HOSTS } from "./ports-probe-funEe1wt.js"; //#region src/daemon/service-env-merge.ts function mergeGatewayServiceEnv(baseEnv, command) { if (!command?.environment) return baseEnv; const merged = { ...baseEnv, ...command.environment }; for (const key of [ "OPENCLAW_LAUNCHD_LABEL", "OPENCLAW_SYSTEMD_UNIT", "OPENCLAW_WINDOWS_TASK_NAME" ]) { const value = baseEnv[key]?.trim(); if (value) merged[key] = value; } return merged; } //#endregion //#region src/daemon/gateway-service-probe-hosts.ts async function resolveGatewayServiceProbeHosts(params) { const mergedEnv = mergeGatewayServiceEnv(params.env ?? process.env, params.command ?? null); const { createConfigIO } = await import("./io.runtime.js"); const cfg = await createConfigIO({ env: mergedEnv, pluginValidation: "skip", suppressFutureVersionWarning: true }).readBestEffortConfig().catch(() => ({})); const bindMode = cfg.gateway?.bind ?? defaultGatewayBindMode(cfg.gateway?.tailscale?.mode ?? "off"); const bindHost = bindMode === "lan" ? "0.0.0.0" : bindMode === "custom" ? cfg.gateway?.customBindHost?.trim() || "0.0.0.0" : bindMode === "tailnet" ? pickPrimaryTailnetIPv4() ?? LOOPBACK_PORT_PROBE_HOSTS[0] : bindMode === "auto" && isContainerEnvironment() ? "0.0.0.0" : LOOPBACK_PORT_PROBE_HOSTS[0]; return resolveGatewayRequiredListenHosts(bindHost); } //#endregion export { mergeGatewayServiceEnv as n, resolveGatewayServiceProbeHosts as t };