fix: add parser Public Suffix List for naming domain file config and fix failed to remove old legacy file config

This commit is contained in:
KodekaTeam committed 2026-06-04 02:47:38 +07:00
1 parent af92445c6c
commit 17cbc2fb98
5 files changed
+148 -1

No files matched your search

@@ -10,6 +10,7 @@ import {
buildManagedNginxFileBase,
buildManagedNginxSharedFileBase,
getDomainConfigAnchor,
getLegacyTwoLabelDomainConfigAnchor,
sanitizeDomainFileName,
sanitizeContainerFileName,
} from "./names";
@@ -385,6 +386,14 @@ export async function provisionNginxConfig(
configMode === "SHARED"
? `${sanitizeContainerFileName(containerName)}--${sanitizeDomainFileName(getDomainConfigAnchor(domainNames))}`
: null;
const legacyBuggyAnchorSafeName =
configMode === "SHARED"
? sanitizeDomainFileName(getLegacyTwoLabelDomainConfigAnchor(domainNames))
: null;
const legacyBuggySharedSafeName =
configMode === "SHARED"
? `${sanitizeContainerFileName(containerName)}--${sanitizeDomainFileName(getLegacyTwoLabelDomainConfigAnchor(domainNames))}`
: null;
const legacyServiceSharedSafeName =
configMode === "SHARED"
? `doktainer-${sanitizeContainerFileName(containerName)}`
@@ -425,6 +434,20 @@ export async function provisionNginxConfig(
`rm -f ${escapeDoubleQuotedShellArg(`/etc/nginx/sites-enabled/${legacySharedSafeName}.conf`)} ${escapeDoubleQuotedShellArg(`/etc/nginx/sites-available/${legacySharedSafeName}.conf`)}`,
);
}
if (legacyBuggyAnchorSafeName && legacyBuggyAnchorSafeName !== safeName) {
cleanupCommands.push(
`rm -f ${escapeDoubleQuotedShellArg(`/etc/nginx/sites-enabled/${legacyBuggyAnchorSafeName}.conf`)} ${escapeDoubleQuotedShellArg(`/etc/nginx/sites-available/${legacyBuggyAnchorSafeName}.conf`)}`,
);
}
if (
legacyBuggySharedSafeName &&
legacyBuggySharedSafeName !== safeName &&
legacyBuggySharedSafeName !== legacySharedSafeName
) {
cleanupCommands.push(
`rm -f ${escapeDoubleQuotedShellArg(`/etc/nginx/sites-enabled/${legacyBuggySharedSafeName}.conf`)} ${escapeDoubleQuotedShellArg(`/etc/nginx/sites-available/${legacyBuggySharedSafeName}.conf`)}`,
);
}
if (
legacyServiceSharedSafeName &&
legacyServiceSharedSafeName !== safeName
@@ -498,6 +521,14 @@ export async function removeManagedNginxProxyConfig(options: {
options.containerName && configMode === "SHARED"
? `${sanitizeContainerFileName(options.containerName)}--${sanitizeDomainFileName(getDomainConfigAnchor(domainNames))}`
: null;
const legacyBuggyAnchorSafeName =
configMode === "SHARED"
? sanitizeDomainFileName(getLegacyTwoLabelDomainConfigAnchor(domainNames))
: null;
const legacyBuggySharedSafeName =
options.containerName && configMode === "SHARED"
? `${sanitizeContainerFileName(options.containerName)}--${sanitizeDomainFileName(getLegacyTwoLabelDomainConfigAnchor(domainNames))}`
: null;
const legacyServiceSharedSafeName =
options.containerName && configMode === "SHARED"
? `doktainer-${sanitizeContainerFileName(options.containerName)}`
@@ -520,6 +551,30 @@ export async function removeManagedNginxProxyConfig(options: {
`/etc/nginx/sites-available/${legacySharedSafeName}.conf`,
);
}
if (legacyBuggyAnchorSafeName && legacyBuggyAnchorSafeName !== managedSafeName) {
await removePrivilegedFile(
options.server,
`/etc/nginx/sites-enabled/${legacyBuggyAnchorSafeName}.conf`,
);
await removePrivilegedFile(
options.server,
`/etc/nginx/sites-available/${legacyBuggyAnchorSafeName}.conf`,
);
}
if (
legacyBuggySharedSafeName &&
legacyBuggySharedSafeName !== managedSafeName &&
legacyBuggySharedSafeName !== legacySharedSafeName
) {
await removePrivilegedFile(
options.server,
`/etc/nginx/sites-enabled/${legacyBuggySharedSafeName}.conf`,
);
await removePrivilegedFile(
options.server,
`/etc/nginx/sites-available/${legacyBuggySharedSafeName}.conf`,
);
}
if (
legacyServiceSharedSafeName &&
legacyServiceSharedSafeName !== managedSafeName