feat: add porkbun dns-01 applicant

This commit is contained in:
Fu Diwei
2025-03-23 22:13:45 +08:00
parent 74b431481d
commit 56ff9e6344
17 changed files with 262 additions and 4 deletions

View File

@@ -34,6 +34,7 @@ export interface AccessModel extends BaseModel {
| AccessConfigForNamecheap
| AccessConfigForNameDotCom
| AccessConfigForNameSilo
| AccessConfigForPorkbun
| AccessConfigForPowerDNS
| AccessConfigForQiniu
| AccessConfigForRainYun
@@ -190,6 +191,11 @@ export type AccessConfigForNS1 = {
apiKey: string;
};
export type AccessConfigForPorkbun = {
apiKey: string;
secretApiKey: string;
};
export type AccessConfigForPowerDNS = {
apiUrl: string;
apiKey: string;

View File

@@ -18,6 +18,7 @@ export const ACCESS_PROVIDERS = Object.freeze({
CLOUDFLARE: "cloudflare",
CLOUDNS: "cloudns",
CMCCCLOUD: "cmcccloud",
DESEC: "desec",
DNSLA: "dnsla",
DOGECLOUD: "dogecloud",
DYNV6: "dynv6",
@@ -33,6 +34,7 @@ export const ACCESS_PROVIDERS = Object.freeze({
NAMEDOTCOM: "namedotcom",
NAMESILO: "namesilo",
NS1: "ns1",
PORKBUN: "porkbun",
POWERDNS: "powerdns",
QINIU: "qiniu",
RAINYUN: "rainyun",
@@ -41,6 +43,7 @@ export const ACCESS_PROVIDERS = Object.freeze({
TENCENTCLOUD: "tencentcloud",
UCLOUD: "ucloud",
UPYUN: "upyun",
VERCEL: "vercel",
VOLCENGINE: "volcengine",
WEBHOOK: "webhook",
WESTCN: "westcn",
@@ -105,6 +108,7 @@ export const accessProvidersMap: Map<AccessProvider["type"] | string, AccessProv
[ACCESS_PROVIDERS.NAMEDOTCOM, "provider.namedotcom", "/imgs/providers/namedotcom.svg", [ACCESS_USAGES.APPLY]],
[ACCESS_PROVIDERS.NAMESILO, "provider.namesilo", "/imgs/providers/namesilo.svg", [ACCESS_USAGES.APPLY]],
[ACCESS_PROVIDERS.NS1, "provider.ns1", "/imgs/providers/ns1.svg", [ACCESS_USAGES.APPLY]],
[ACCESS_PROVIDERS.PORKBUN, "provider.porkbun", "/imgs/providers/porkbun.svg", [ACCESS_USAGES.APPLY]],
[ACCESS_PROVIDERS.CMCCCLOUD, "provider.cmcccloud", "/imgs/providers/cmcccloud.svg", [ACCESS_USAGES.APPLY]],
[ACCESS_PROVIDERS.RAINYUN, "provider.rainyun", "/imgs/providers/rainyun.svg", [ACCESS_USAGES.APPLY]],
[ACCESS_PROVIDERS.WESTCN, "provider.westcn", "/imgs/providers/westcn.svg", [ACCESS_USAGES.APPLY]],
@@ -140,6 +144,7 @@ export const APPLY_DNS_PROVIDERS = Object.freeze({
CLOUDFLARE: `${ACCESS_PROVIDERS.CLOUDFLARE}`,
CLOUDNS: `${ACCESS_PROVIDERS.CLOUDNS}`,
CMCCCLOUD: `${ACCESS_PROVIDERS.CMCCCLOUD}`,
DESEC: `${ACCESS_PROVIDERS.DESEC}`,
DNSLA: `${ACCESS_PROVIDERS.DNSLA}`,
DYNV6: `${ACCESS_PROVIDERS.DYNV6}`,
GCORE: `${ACCESS_PROVIDERS.GCORE}`,
@@ -153,10 +158,12 @@ export const APPLY_DNS_PROVIDERS = Object.freeze({
NAMEDOTCOM: `${ACCESS_PROVIDERS.NAMEDOTCOM}`,
NAMESILO: `${ACCESS_PROVIDERS.NAMESILO}`,
NS1: `${ACCESS_PROVIDERS.NS1}`,
PORKBUN: `${ACCESS_PROVIDERS.PORKBUN}`,
POWERDNS: `${ACCESS_PROVIDERS.POWERDNS}`,
RAINYUN: `${ACCESS_PROVIDERS.RAINYUN}`,
TENCENTCLOUD: `${ACCESS_PROVIDERS.TENCENTCLOUD}`, // 兼容旧值,等同于 `TENCENTCLOUD_DNS`
TENCENTCLOUD_DNS: `${ACCESS_PROVIDERS.TENCENTCLOUD}-dns`,
VERCEL: `${ACCESS_PROVIDERS.VERCEL}`,
VOLCENGINE: `${ACCESS_PROVIDERS.VOLCENGINE}`, // 兼容旧值,等同于 `VOLCENGINE_DNS`
VOLCENGINE_DNS: `${ACCESS_PROVIDERS.VOLCENGINE}-dns`,
WESTCN: `${ACCESS_PROVIDERS.WESTCN}`,
@@ -196,6 +203,7 @@ export const applyDNSProvidersMap: Map<ApplyDNSProvider["type"] | string, ApplyD
[APPLY_DNS_PROVIDERS.NAMEDOTCOM, "provider.namedotcom"],
[APPLY_DNS_PROVIDERS.NAMESILO, "provider.namesilo"],
[APPLY_DNS_PROVIDERS.NS1, "provider.ns1"],
[APPLY_DNS_PROVIDERS.PORKBUN, "provider.porkbun"],
[APPLY_DNS_PROVIDERS.CMCCCLOUD, "provider.cmcc"],
[APPLY_DNS_PROVIDERS.RAINYUN, "provider.rainyun"],
[APPLY_DNS_PROVIDERS.WESTCN, "provider.westcn"],