dnscontrol/integrationTest/providers.json

149 lines
3.7 KiB
JSON
Raw Normal View History

{
"ACTIVEDIRECTORY_PS": {
"ADServer": "$AD_SERVER",
"domain": "$AD_DOMAIN"
},
"AXFRDDNS": {
"domain": "$AXFRDDNS_DOMAIN",
"master": "$AXFRDDNS_MASTER",
"nameservers": "ns.example.com",
"transfer-key": "$AXFRDDNS_TRANSFER_KEY",
"update-key": "$AXFRDDNS_UPDATE_KEY"
},
"AZURE_DNS": {
"ClientID": "$AZURE_DNS_CLIENT_ID",
"ClientSecret": "$AZURE_DNS_CLIENT_SECRET",
"ResourceGroup": "$AZURE_DNS_RESOURCE_GROUP",
"SubscriptionID": "$AZURE_DNS_SUBSCRIPTION_ID",
"TenantID": "$AZURE_DNS_TENANT_ID",
"domain": "$AZURE_DNS_DOMAIN"
},
"BIND": {
"domain": "$BIND_DOMAIN"
},
"CLOUDFLAREAPI": {
"apikey": "$CLOUDFLAREAPI_KEY",
"apitoken": "$CLOUDFLAREAPI_TOKEN",
"apiuser": "$CLOUDFLAREAPI_USER",
"domain": "$CLOUDFLAREAPI_DOMAIN"
},
"CLOUDFLAREAPI_OLD": {
"apikey": "$CF_KEY",
"apiuser": "$CF_USER",
"domain": "$CF_DOMAIN",
"knownFailures": "54"
},
"CLOUDNS": {
"auth-id": "$CLOUDNS_AUTH_ID",
"auth-password": "$CLOUDNS_AUTH_PASSWORD",
"domain": "$CLOUDNS_DOMAIN"
},
"DIGITALOCEAN": {
"domain": "$DIGITALOCEAN_DOMAIN",
"token": "$DIGITALOCEAN_TOKEN"
},
"DNSIMPLE": {
"baseurl": "https://api.sandbox.dnsimple.com",
"domain": "$DNSIMPLE_DOMAIN",
"token": "$DNSIMPLE_TOKEN"
},
"EXOSCALE": {
"apikey": "$EXOSCALE_API_KEY",
"dns-endpoint": "https://api.exoscale.ch/dns",
"domain": "$EXOSCALE_DOMAIN",
"secretkey": "$EXOSCALE_SECRET_KEY"
},
"GANDI_V5": {
"apikey": "$GANDI_V5_APIKEY",
"domain": "$GANDI_V5_DOMAIN"
},
"GCLOUD": {
"client_email": "$GCLOUD_EMAIL",
"domain": "$GCLOUD_DOMAIN",
"private_key": "$GCLOUD_PRIVATEKEY",
"project_id": "$GCLOUD_PROJECT",
"type": "$GCLOUD_TYPE"
},
"HEDNS": {
"domain": "$HEDNS_DOMAIN",
"password": "$HEDNS_PASSWORD",
"session-file-path": ".",
"totp-key": "$HEDNS_TOTP_SECRET",
"username": "$HEDNS_USERNAME"
},
NEW PROVIDER: HETZNER DNS Console (#904) * HETZNER: implement the provider for Hetzner DNS Console Signed-off-by: Jakob Ackermann <das7pad@outlook.com> * HETZNER: apply review feedback - add domain into error messages - insert sub-strings using `%q` - insert sub-errors using `%w` - change api.getZone() signature to return a (potentially `nil`) Zone pointer instead of a (potentially empty) Zone value - sort imports and confirm with `$ goimports -w providers/hetzner/` - use exact 'api_key' term in error message of settings validation - add blank line for logic separation - drop internal record id from correction messages Co-Authored-By: Tom Limoncelli <tlimoncelli@stackoverflow.com> Signed-off-by: Jakob Ackermann <das7pad@outlook.com> * HETZNER: add request rate-limiting handling There are a limited number of data-points on how their rate-limiting works at this time. I deduce from my account to others and use a fixed/ constant backoff of 1s as the initial delay. Thereafter exponential increase with factor 2 (not needed at this time). Hetzner has not made any official statements on rate-limiting, so this is guesswork only. Signed-off-by: Jakob Ackermann <das7pad@outlook.com> * HETZNER: address golint complaints - baseUrl -> baseURL - mark Record as private -> record - mark Zone as private -> zone - mark RequestRateLimiter as private -> requestRateLimiter - capitalize Id fields as ID - keep delay logic on same level, move return out of branch Signed-off-by: Jakob Ackermann <das7pad@outlook.com> * HETZNER: rate_limited: init the response timestamp on requestRateLimiter Signed-off-by: Jakob Ackermann <das7pad@outlook.com> * HETZNER: requestRateLimiter: align local variable with struct name Signed-off-by: Jakob Ackermann <das7pad@outlook.com> Co-authored-by: Tom Limoncelli <tlimoncelli@stackoverflow.com>
2020-10-22 21:44:21 +08:00
"HETZNER": {
"api_key": "$HETZNER_API_KEY",
"domain": "$HETZNER_DOMAIN",
"optimize_for_rate_limit_quota": "Hour",
"start_with_default_rate_limit": "true"
NEW PROVIDER: HETZNER DNS Console (#904) * HETZNER: implement the provider for Hetzner DNS Console Signed-off-by: Jakob Ackermann <das7pad@outlook.com> * HETZNER: apply review feedback - add domain into error messages - insert sub-strings using `%q` - insert sub-errors using `%w` - change api.getZone() signature to return a (potentially `nil`) Zone pointer instead of a (potentially empty) Zone value - sort imports and confirm with `$ goimports -w providers/hetzner/` - use exact 'api_key' term in error message of settings validation - add blank line for logic separation - drop internal record id from correction messages Co-Authored-By: Tom Limoncelli <tlimoncelli@stackoverflow.com> Signed-off-by: Jakob Ackermann <das7pad@outlook.com> * HETZNER: add request rate-limiting handling There are a limited number of data-points on how their rate-limiting works at this time. I deduce from my account to others and use a fixed/ constant backoff of 1s as the initial delay. Thereafter exponential increase with factor 2 (not needed at this time). Hetzner has not made any official statements on rate-limiting, so this is guesswork only. Signed-off-by: Jakob Ackermann <das7pad@outlook.com> * HETZNER: address golint complaints - baseUrl -> baseURL - mark Record as private -> record - mark Zone as private -> zone - mark RequestRateLimiter as private -> requestRateLimiter - capitalize Id fields as ID - keep delay logic on same level, move return out of branch Signed-off-by: Jakob Ackermann <das7pad@outlook.com> * HETZNER: rate_limited: init the response timestamp on requestRateLimiter Signed-off-by: Jakob Ackermann <das7pad@outlook.com> * HETZNER: requestRateLimiter: align local variable with struct name Signed-off-by: Jakob Ackermann <das7pad@outlook.com> Co-authored-by: Tom Limoncelli <tlimoncelli@stackoverflow.com>
2020-10-22 21:44:21 +08:00
},
2018-08-30 20:54:42 +08:00
"HEXONET": {
"apientity": "$HEXONET_ENTITY",
2018-08-30 20:54:42 +08:00
"apilogin": "$HEXONET_UID",
"apipassword": "$HEXONET_PW",
"debugmode": "$HEXONET_DEBUGMODE",
"domain": "$HEXONET_DOMAIN",
"ipaddress": "$HEXONET_IP"
2018-08-30 20:54:42 +08:00
},
"INWX": {
"domain": "$INWX_DOMAIN",
"password": "$INWX_PASSWORD",
"sandbox": "1",
"username": "$INWX_USER"
},
2017-11-15 12:08:06 +08:00
"LINODE": {
"domain": "$LINODE_DOMAIN",
"token": "$LINODE_TOKEN"
2017-11-15 12:08:06 +08:00
},
"NAMECHEAP": {
"apikey": "$NAMECHEAP_KEY",
"apiuser": "$NAMECHEAP_USER",
"domain": "$NAMECHEAP_DOMAIN"
},
2017-07-13 22:39:55 +08:00
"NAMEDOTCOM": {
"apikey": "$NAMEDOTCOM_KEY",
"apiurl": "$NAMEDOTCOM_URL",
"apiuser": "$NAMEDOTCOM_USER",
"domain": "$NAMEDOTCOM_DOMAIN"
2017-07-13 22:39:55 +08:00
},
"NETCUP": {
"api-key": "$NETCUP_KEY",
"api-password": "$NETCUP_PASSWORD",
"customer-number": "$NETCUP_CUSTOMER_NUMBER",
"domain": "$NETCUP_DOMAIN"
},
"NS1": {
"api_token": "$NS1_TOKEN",
"domain": "$NS1_DOMAIN"
},
"OCTODNS": {
"directory": "config",
"domain": "example.com"
},
"OVH": {
"app-key": "$OVH_APP_KEY",
"app-secret-key": "$OVH_APP_SECRET_KEY",
"consumer-key": "$OVH_CONSUMER_KEY",
"domain": "$OVH_DOMAIN"
},
"POWERDNS": {
"apikey": "$POWERDNS_APIKEY",
"apiurl": "$POWERDNS_APIURL",
"servername": "$POWERDNS_SERVERNAME"
},
"ROUTE53": {
"KeyId": "$ROUTE53_KEY_ID",
"SecretKey": "$ROUTE53_KEY",
"domain": "$ROUTE53_DOMAIN"
},
"SOFTLAYER": {
"api_key": "$SL_API_KEY",
"domain": "$SL_DOMAIN",
"username": "$SL_USERNAME"
},
"VULTR": {
"domain": "$VULTR_DOMAIN",
"token": "$VULTR_TOKEN"
}
2017-09-30 03:49:39 +08:00
}