Add transaction to alias address picking

This commit is contained in:
Owen
2026-05-06 15:53:46 -07:00
parent 49c7319342
commit 65ee9b9544
2 changed files with 11 additions and 5 deletions

View File

@@ -361,7 +361,7 @@ export async function updateClientResources(
} else { } else {
let aliasAddress: string | null = null; let aliasAddress: string | null = null;
if (resourceData.mode === "host" || resourceData.mode === "http") { if (resourceData.mode === "host" || resourceData.mode === "http") {
aliasAddress = await getNextAvailableAliasAddress(orgId); aliasAddress = await getNextAvailableAliasAddress(orgId, trx);
} }
let domainInfo: let domainInfo:

View File

@@ -372,9 +372,10 @@ export async function getNextAvailableClientSubnet(
} }
export async function getNextAvailableAliasAddress( export async function getNextAvailableAliasAddress(
orgId: string orgId: string,
trx: Transaction | typeof db = db
): Promise<string> { ): Promise<string> {
const [org] = await db.select().from(orgs).where(eq(orgs.orgId, orgId)); const [org] = await trx.select().from(orgs).where(eq(orgs.orgId, orgId));
if (!org) { if (!org) {
throw new Error(`Organization with ID ${orgId} not found`); throw new Error(`Organization with ID ${orgId} not found`);
@@ -390,7 +391,7 @@ export async function getNextAvailableAliasAddress(
); );
} }
const existingAddresses = await db const existingAddresses = await trx
.select({ .select({
aliasAddress: siteResources.aliasAddress aliasAddress: siteResources.aliasAddress
}) })
@@ -478,7 +479,12 @@ export type Alias = { alias: string | null; aliasAddress: string | null };
export function generateAliasConfig(allSiteResources: SiteResource[]): Alias[] { export function generateAliasConfig(allSiteResources: SiteResource[]): Alias[] {
return allSiteResources return allSiteResources
.filter((sr) => sr.aliasAddress && ((sr.alias && sr.mode == "host") || (sr.fullDomain && sr.mode == "http"))) .filter(
(sr) =>
sr.aliasAddress &&
((sr.alias && sr.mode == "host") ||
(sr.fullDomain && sr.mode == "http"))
)
.map((sr) => ({ .map((sr) => ({
alias: sr.alias || sr.fullDomain, alias: sr.alias || sr.fullDomain,
aliasAddress: sr.aliasAddress aliasAddress: sr.aliasAddress