This commit is contained in:
2026-09-03 11:28:30 +07:00 Unverified
parent 26c2d0f015
commit 82d0fe3e0d
93 changed files with 19237 additions and 1285 deletions
+11 -8
View File
@@ -1,7 +1,7 @@
import type { ComposeSpecification } from "../schema/docker.d";
import { composeToKubernetes, type KubernetesResource } from "./convert";
import { reconcilePostgresClaims } from "./database";
import { reconcileS3Claims } from "./storage";
import { getComposePostgresClaims } from "./database";
import { getComposeS3Claims } from "./storage";
import { resolveBuildImages, type BuildOptions } from "./build";
export async function renderResources(
@@ -10,12 +10,15 @@ export async function renderResources(
cwd = process.cwd(),
options: BuildOptions = {},
): 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 };
const providers = [
...(getComposePostgresClaims(compose).length ? ["Postgres"] : []),
...(getComposeS3Claims(compose).length ? ["S3"] : []),
];
if (providers.length > 0) {
throw new Error(
`Cannot export without generated ${providers.join(" and ")} credentials. Export is side-effect-free; run kuber up or remove managed provider claims.`,
);
}
const buildImages = await resolveBuildImages(project, compose, options);
return composeToKubernetes(project, compose, cwd, serviceEnv, buildImages);
return composeToKubernetes(project, compose, cwd, {}, buildImages);
}