Files
kuber/lib/render.ts
T
2026-08-28 22:07:40 +07:00

19 lines
765 B
TypeScript

import type { ComposeSpecification } from "../schema/docker.d";
import { composeToKubernetes, type KubernetesResource } from "./convert";
import { reconcilePostgresClaims } from "./database";
import { reconcileS3Claims } from "./storage";
export async function renderResources(
project: string,
compose: ComposeSpecification,
cwd = process.cwd(),
): Promise<KubernetesResource[]> {
const postgresEnv = await reconcilePostgresClaims(project, compose);
const s3Env = await reconcileS3Claims(project, compose);
const serviceEnv = { ...postgresEnv };
for (const [service, environment] of Object.entries(s3Env)) {
serviceEnv[service] = { ...serviceEnv[service], ...environment };
}
return composeToKubernetes(project, compose, cwd, serviceEnv);
}