mirror of
https://github.com/Dokploy/dokploy
synced 2025-06-26 18:27:59 +00:00
refactor: retrieve the correct names when adding a prefix
This commit is contained in:
@@ -152,12 +152,8 @@ export const composeRouter = createTRPCRouter({
|
|||||||
const compose = await findComposeById(input.composeId);
|
const compose = await findComposeById(input.composeId);
|
||||||
const domains = await findDomainsByComposeId(input.composeId);
|
const domains = await findDomainsByComposeId(input.composeId);
|
||||||
|
|
||||||
let composeFile = await addDomainToCompose(compose, domains);
|
const composeFile = await addDomainToCompose(compose, domains);
|
||||||
|
|
||||||
if (compose.randomize && composeFile && compose.prefix) {
|
|
||||||
const result = randomizeSpecificationFile(composeFile, compose.prefix);
|
|
||||||
composeFile = result;
|
|
||||||
}
|
|
||||||
return dump(composeFile, {
|
return dump(composeFile, {
|
||||||
lineWidth: 1000,
|
lineWidth: 1000,
|
||||||
});
|
});
|
||||||
|
|||||||
@@ -19,6 +19,7 @@ import { eq } from "drizzle-orm";
|
|||||||
import { getDokployUrl } from "./admin";
|
import { getDokployUrl } from "./admin";
|
||||||
import { createDeploymentCompose, updateDeploymentStatus } from "./deployment";
|
import { createDeploymentCompose, updateDeploymentStatus } from "./deployment";
|
||||||
import { validUniqueServerAppName } from "./project";
|
import { validUniqueServerAppName } from "./project";
|
||||||
|
import { randomizeSpecificationFile } from "@/server/utils/docker/compose";
|
||||||
|
|
||||||
export type Compose = typeof compose.$inferSelect;
|
export type Compose = typeof compose.$inferSelect;
|
||||||
|
|
||||||
@@ -117,7 +118,16 @@ export const loadServices = async (
|
|||||||
await cloneCompose(compose);
|
await cloneCompose(compose);
|
||||||
}
|
}
|
||||||
|
|
||||||
const composeData = await loadDockerCompose(compose);
|
let composeData = await loadDockerCompose(compose);
|
||||||
|
|
||||||
|
if (compose.randomize && composeData) {
|
||||||
|
const randomizedCompose = randomizeSpecificationFile(
|
||||||
|
composeData,
|
||||||
|
compose.prefix,
|
||||||
|
);
|
||||||
|
composeData = randomizedCompose;
|
||||||
|
}
|
||||||
|
|
||||||
if (!composeData?.services) {
|
if (!composeData?.services) {
|
||||||
throw new TRPCError({
|
throw new TRPCError({
|
||||||
code: "NOT_FOUND",
|
code: "NOT_FOUND",
|
||||||
|
|||||||
@@ -29,8 +29,11 @@ export const randomizeComposeFile = async (
|
|||||||
|
|
||||||
export const randomizeSpecificationFile = (
|
export const randomizeSpecificationFile = (
|
||||||
composeSpec: ComposeSpecification,
|
composeSpec: ComposeSpecification,
|
||||||
prefix: string,
|
prefix?: string,
|
||||||
) => {
|
) => {
|
||||||
|
if (!prefix) {
|
||||||
|
return composeSpec;
|
||||||
|
}
|
||||||
const newComposeFile = addPrefixToAllProperties(composeSpec, prefix);
|
const newComposeFile = addPrefixToAllProperties(composeSpec, prefix);
|
||||||
return newComposeFile;
|
return newComposeFile;
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -94,12 +94,17 @@ export const addDomainToCompose = async (
|
|||||||
domains: Domain[],
|
domains: Domain[],
|
||||||
) => {
|
) => {
|
||||||
const { appName } = compose;
|
const { appName } = compose;
|
||||||
const result = await loadDockerCompose(compose);
|
let result = await loadDockerCompose(compose);
|
||||||
|
|
||||||
if (!result || domains.length === 0) {
|
if (!result || domains.length === 0) {
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (compose.randomize) {
|
||||||
|
const randomized = randomizeSpecificationFile(result, compose.prefix);
|
||||||
|
result = randomized;
|
||||||
|
}
|
||||||
|
|
||||||
for (const domain of domains) {
|
for (const domain of domains) {
|
||||||
const { serviceName, https } = domain;
|
const { serviceName, https } = domain;
|
||||||
if (!serviceName) {
|
if (!serviceName) {
|
||||||
|
|||||||
Reference in New Issue
Block a user