dns_conoha, dns_dpi, dns_euserv, dns_tele3

This commit is contained in:
Jamie Curnow 2022-06-01 13:23:56 +04:00
parent 523449f050
commit b221446bb0
6 changed files with 207 additions and 0 deletions

View File

@ -44,16 +44,19 @@ func List() []Provider {
getDNSAzure(),
getDNSCf(),
getDNSCloudns(),
getDNSConoha(),
getDNSCx(),
getDNSCyon(),
getDNSDgon(),
getDNSDNSimple(),
getDNSDa(),
getDNSDp(),
getDNSDpi(),
getDNSDreamhost(),
getDNSDuckDNS(),
getDNSDyn(),
getDNSDynu(),
getDNSEuserv(),
getDNSFreeDNS(),
getDNSGandiLiveDNS(),
getDNSGd(),
@ -70,6 +73,7 @@ func List() []Provider {
getDNSNamesilo(),
getDNSSelectel(),
getDNSServercow(),
getDNSTele3(),
getDNSOne(),
getDNSPDNS(),
getDNSUnoeuro(),

View File

@ -0,0 +1,70 @@
package dnsproviders
const conohaSchema = `
{
"type": "object",
"required": [
"subscription_id",
"tenant_id",
"app_id",
"client_secret"
],
"additionalProperties": false,
"properties": {
"api_url": {
"type": "string",
"minLength": 4
},
"user": {
"type": "string",
"minLength": 1
},
"pass": {
"type": "string",
"minLength": 1
},
"tenant_id": {
"type": "string",
"minLength": 1
}
}
}
`
func getDNSConoha() Provider {
return Provider{
AcmeshName: "dns_conoha",
Schema: conohaSchema,
Fields: []providerField{
{
Name: "API URL",
Type: "text",
MetaKey: "api_url",
EnvKey: "CONOHA_IdentityServiceApi",
IsRequired: true,
},
{
Name: "Username",
Type: "text",
MetaKey: "user",
EnvKey: "CONOHA_Username",
IsRequired: true,
},
{
Name: "Password",
Type: "password",
MetaKey: "password",
EnvKey: "CONOHA_Password",
IsRequired: true,
IsSecret: true,
},
{
Name: "Tenant ID",
Type: "text",
MetaKey: "tenant_id",
EnvKey: "CONOHA_TenantId",
IsRequired: true,
},
},
}
}

View File

@ -0,0 +1,46 @@
package dnsproviders
const dnsPodComSchema = `
{
"type": "object",
"required": [
"id",
"api_key"
],
"additionalProperties": false,
"properties": {
"id": {
"type": "string",
"minLength": 1
},
"api_key": {
"type": "string",
"minLength": 1
}
}
}
`
func getDNSDpi() Provider {
return Provider{
AcmeshName: "dns_dpi",
Schema: dnsPodComSchema,
Fields: []providerField{
{
Name: "ID",
Type: "text",
MetaKey: "id",
EnvKey: "DPI_Id",
IsRequired: true,
},
{
Name: "Key",
Type: "password",
MetaKey: "api_key",
EnvKey: "DPI_Key",
IsRequired: true,
IsSecret: true,
},
},
}
}

View File

@ -0,0 +1,50 @@
package dnsproviders
const euservSchema = `
{
"type": "object",
"required": [
"user",
"password"
],
"additionalProperties": false,
"properties": {
"user": {
"type": "string",
"minLength": 1
},
"password": {
"type": "string",
"minLength": 1
},
"otp_secret": {
"type": "string",
"minLength": 1
}
}
}
`
func getDNSEuserv() Provider {
return Provider{
AcmeshName: "dns_euserv",
Schema: euservSchema,
Fields: []providerField{
{
Name: "User",
Type: "text",
MetaKey: "user",
EnvKey: "EUSERV_Username",
IsRequired: true,
},
{
Name: "Password",
Type: "password",
MetaKey: "password",
EnvKey: "EUSERV_Password",
IsRequired: true,
IsSecret: true,
},
},
}
}

View File

@ -0,0 +1,25 @@
package dnsproviders
func getDNSTele3() Provider {
return Provider{
AcmeshName: "dns_tele3",
Schema: commonKeySecretSchema,
Fields: []providerField{
{
Name: "Key",
Type: "text",
MetaKey: "api_key",
EnvKey: "TELE3_Key",
IsRequired: true,
},
{
Name: "Secret",
Type: "password",
MetaKey: "secret",
EnvKey: "TELE3_Secret",
IsRequired: true,
IsSecret: true,
},
},
}
}

View File

@ -26,6 +26,9 @@
"acmesh.dns_cloudns": {
"defaultMessage": "ClouDNS.net"
},
"acmesh.dns_conoha": {
"defaultMessage": "Conoha"
},
"acmesh.dns_cx": {
"defaultMessage": "CloudXNS"
},
@ -44,6 +47,9 @@
"acmesh.dns_dp": {
"defaultMessage": "DNSPod.cn"
},
"acmesh.dns_dpi": {
"defaultMessage": "DNSPod.com"
},
"acmesh.dns_dreamhost": {
"defaultMessage": "DreamHost"
},
@ -56,6 +62,9 @@
"acmesh.dns_dynu": {
"defaultMessage": "Dynu"
},
"acmesh.dns_euserv": {
"defaultMessage": "Euserv"
},
"acmesh.dns_freedns": {
"defaultMessage": "FreeDNS"
},
@ -110,6 +119,9 @@
"acmesh.dns_servercow": {
"defaultMessage": "Servercow"
},
"acmesh.dns_tele3": {
"defaultMessage": "TELE3"
},
"acmesh.dns_unoeuro": {
"defaultMessage": "UnoEuro"
},