Allow add/edit domain to upsert tenant DNS on Cloudflare or Arvan.
Update DNS writes @, www, business, customer, and api records on the chosen provider instead of Arvan only. Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
co-authored by
Cursor
parent
d1f60b5313
commit
f42e6fe2a4
@@ -719,8 +719,10 @@ export class DomainAdminService {
|
||||
},
|
||||
});
|
||||
|
||||
// Same Arvan helper as business-admin domain add/edit (`ensureTenantRecords`).
|
||||
const dnsError = dto.updateDns ? await this.applyArvanDns(host) : null;
|
||||
// Same DNS helper as business-admin domain add/edit (`ensureTenantRecords`).
|
||||
const dnsError = dto.updateDns
|
||||
? await this.applyTenantDns(host, dto.dnsProvider === 'cloudflare' ? 'cloudflare' : 'arvan')
|
||||
: null;
|
||||
|
||||
return {
|
||||
...updated,
|
||||
@@ -936,12 +938,22 @@ export class DomainAdminService {
|
||||
}
|
||||
}
|
||||
|
||||
private async applyArvanDns(host: string): Promise<string | null> {
|
||||
private async applyTenantDns(
|
||||
host: string,
|
||||
provider: ParkedDnsProvider,
|
||||
): Promise<string | null> {
|
||||
try {
|
||||
await this.arvanDns.ensureTenantRecords(host);
|
||||
if (provider === 'cloudflare') {
|
||||
await this.cloudflareDns.ensureTenantRecords(host);
|
||||
} else {
|
||||
await this.arvanDns.ensureTenantRecords(host);
|
||||
}
|
||||
return null;
|
||||
} catch (err) {
|
||||
return this.httpErrorMessage(err, 'Arvan DNS update failed');
|
||||
return this.httpErrorMessage(
|
||||
err,
|
||||
provider === 'cloudflare' ? 'Cloudflare DNS update failed' : 'Arvan DNS update failed',
|
||||
);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user