fix: 支持 runtime store 连接池 YAML 配置
This commit is contained in:
@@ -935,7 +935,11 @@ function deployServicesForProfile(deploy, profile) {
|
||||
.filter((service) => allowed.has(service.serviceId))
|
||||
.map((service) => {
|
||||
const copy = cloneJson(service);
|
||||
copy.env = mergeEnvMaps(copy.env, serviceDeclarationEnvForProfile(deploy, profile, service.serviceId));
|
||||
copy.env = mergeEnvMaps(
|
||||
copy.env,
|
||||
serviceDeclarationEnvForProfile(deploy, profile, service.serviceId),
|
||||
runtimeStoreEnvForProfile(deploy, profile, service.serviceId)
|
||||
);
|
||||
return [service.serviceId, copy];
|
||||
}));
|
||||
const laneServices = isRuntimeLane(profile) && Array.isArray(deploy.lanes?.[profile]?.services)
|
||||
@@ -944,7 +948,10 @@ function deployServicesForProfile(deploy, profile) {
|
||||
for (const override of laneServices) {
|
||||
const existing = services.get(override.serviceId) ?? {
|
||||
serviceId: override.serviceId,
|
||||
env: serviceDeclarationEnvForProfile(deploy, profile, override.serviceId)
|
||||
env: mergeEnvMaps(
|
||||
serviceDeclarationEnvForProfile(deploy, profile, override.serviceId),
|
||||
runtimeStoreEnvForProfile(deploy, profile, override.serviceId)
|
||||
)
|
||||
};
|
||||
services.set(override.serviceId, {
|
||||
...existing,
|
||||
@@ -972,6 +979,15 @@ function runtimeWorkbenchTraceTimelinePolicy(deploy, profile) {
|
||||
return Object.keys(result).length > 0 ? result : null;
|
||||
}
|
||||
|
||||
function runtimeStoreEnvForProfile(deploy, profile, serviceId) {
|
||||
if (!isRuntimeLane(profile) || serviceId !== "hwlab-cloud-api") return {};
|
||||
const postgres = runtimeLaneConfig(deploy, profile)?.runtimeStore?.postgres;
|
||||
if (!postgres || typeof postgres !== "object" || Array.isArray(postgres)) return {};
|
||||
const env = {};
|
||||
if (Number.isInteger(postgres.poolMax)) env.HWLAB_CLOUD_DB_POOL_MAX = String(postgres.poolMax);
|
||||
return env;
|
||||
}
|
||||
|
||||
function booleanEnv(value) {
|
||||
return value ? "1" : "0";
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user