Commit graph

119 commits

Author SHA1 Message Date
Jeffrey Cafferata
f912b15adc
DOCS: Migrated documentation website to Gitbook (#1809) 2023-01-20 07:56:20 -05:00
Tom Limoncelli
9bb38c4526
CHORE: Remove references to TXTMulti (#1953) 2023-01-18 11:45:36 -05:00
Tom Limoncelli
46d5666df7
CHORE: Update deps (#1936) 2023-01-12 17:19:12 -05:00
Jeffrey Cafferata
481137d964
OCTODNS: Remove OctoDNS provider (#1921)
Co-authored-by: Tom Limoncelli <tlimoncelli@stackoverflow.com>
2023-01-09 08:54:02 -05:00
Tom Limoncelli
38f24ea7aa
CHORE: go generate (#1841) 2022-12-02 09:40:07 -05:00
Jed Fox
cfc93bff46
Improve layout and display of the feature matrix table (#1824) 2022-11-29 01:18:52 -05:00
Amogh Lele
1618aceb2a
NEW PROVIDER: Netlify (#1820)
Signed-off-by: Amogh Lele <amolele@gmail.com>
2022-11-28 11:01:35 -05:00
imlonghao
d90ca157e4
PORKBUN: New provider (#1819)
Co-authored-by: Tom Limoncelli <tlimoncelli@stackoverflow.com>
2022-11-26 11:36:17 -05:00
Yuhui Xu
35818299c0
NEW PROVIDER: Gcore DNS (#1816) 2022-11-15 12:40:08 -05:00
Jeffrey Cafferata
67bbbb3596
DOCS: Fix DSL table of contents (#1783)
Co-authored-by: Tom Limoncelli <tlimoncelli@stackoverflow.com>
2022-10-30 13:57:22 -04:00
Jeffrey Cafferata
fd42485d7d
DOCS: Automatically make a table of contents (TOC) (#1778) 2022-10-28 11:27:06 -04:00
Simen Bai
0d9bdc2ddc
DOMAINNAMESHOP: Domainnameshop documentation update (#1726)
Co-authored-by: Simen Bai <git@simenbai.no>
2022-08-20 00:51:25 -04:00
Tom Limoncelli
83a4b6a2f4
Remove ACTIVEDIRECTORY_PS (#1680) 2022-08-11 13:15:19 -04:00
MisterErwin
7865e37c8f
Add RWTH provider (#1629)
* Add RWTH provider

* fix Owners order

* Reorganize RWTH Provider

* Fix staticcheck and code style issues

Co-authored-by: Tom Limoncelli <tlimoncelli@stackoverflow.com>
2022-08-04 14:40:27 -04:00
Simen Bai
e9510da434
Domainnameshop provider (#1625)
* Added basic structure for domain name shop

* Finished proof of concept for domainnameshop

* Fixed handeling of IDNA for CNAME records

* Updated documentation notes

* Added docs

* Ran linter and vet

* Removed proxy config used for debugging

* Ran go generate

* Fixed issue with TTLs being restricted to a multiple of 60

* Ran tests, vet and linting and fixed flaws

* Fixed typo in docs

* Improved code based on feedback

* Fixed issues with TXT records not working properly

* Refactored according to new file layout proposed

* Updated documentation matrix

* Suggestions and corrections

* Corrected according to suggestions

Co-authored-by: Simen Bai <git@simenbai.no>
Co-authored-by: Tom Limoncelli <tlimoncelli@stackoverflow.com>
2022-08-01 12:01:37 -04:00
Tom Limoncelli
44001dc999
DOCS: Add tips about TXT records (#1622)
* Add tips about TXT records

* More comments

* Remove test temporarily

* go generate

* A a link to the test
2022-07-14 14:43:07 -04:00
Tom Limoncelli
dad4115a55
CLOUDFLAREAPI: Fix TXT quoting bug (#1543)
* Cleanup

* wip!

* Fix cloudflare quote bug

* wip!

* cleanup

* go generate
2022-06-18 09:58:55 -04:00
Tom Limoncelli
67baad392d
GANDI_V5: Fix DS test / Eliminate SHA1 use in DS_Child tests (#1502) 2022-05-08 13:21:47 -04:00
Tom Limoncelli
17feddb157
go generate (#1479) 2022-04-04 14:55:35 -04:00
Tom Limoncelli
73de17adc2 Revert "_PROVIDER flag phase 1: generate warnings"
This reverts commit 26c632e05f.
2022-03-27 15:56:57 -04:00
Tom Limoncelli
26c632e05f _PROVIDER flag phase 1: generate warnings 2022-03-27 15:54:16 -04:00
Koen Vlaswinkel
02d76affc0
LINODE: Add support for CAA records and implement get-zones (#1454)
* LINODE: Add support for CAA records

* LINODE: Implement get-zones

Co-authored-by: Tom Limoncelli <tlimoncelli@stackoverflow.com>
2022-03-25 15:22:20 -04:00
Tom Limoncelli
52a8964564
LINODE: Skip CAA flag test (#1455)
* Skip CAA flag test for LINODE

* Require go 1.18

* Update CCI to use go 1.18

* go mod tidy

* HEXONET: Adapt to new OTE endpoint (#1463)

* HEXONET: Adapt to new OTE endpoint

* CCI uses goreleaser which needs go 1.8

* HEXONET: Fix error format string (#1462)

Fixes https://github.com/StackExchange/dnscontrol/issues/1461

* MAINT: "DUPLICATE E_RECORD" no longer a hard error (#1465)

* go generate
2022-03-25 15:16:36 -04:00
Julius Rickert
6f9e2797b7
DOCS: Fix examples in documentation (#1435)
* Add example include

* Replace example includes

* Remove old example includes
2022-03-04 07:49:03 -05:00
Tom Limoncelli
d9c4d391a9
MAINT: go generate (#1432) 2022-03-01 14:39:11 -05:00
Norman
263c6b7290
NS1: Enable get-zones (#1373)
Refactor code to get zones from NS1 API into GetZonesRecords function to
enable get-zones
2022-01-19 13:58:21 -05:00
Hampton
ea20c13e67
NEW PROVIDER: Packetframe (#1347)
* Implement Packetframe provider

* Packetframe: Move to authorization and fix multiple TXT records

* AKAMAIEDGEDNS: fix staticcheck warnings/errors (#1346)

* downcase TLSA

* Akamai provider

* Akamai provider

* EdgeDNS provider

* AkamaiEdgeDNS provider

* AkamaiEdgeDNS provider

* AkamaiEdgeDNS provider

* AKAMAIEDGEDNS: fix staticcheck warnings/errors

Co-authored-by: Tom Limoncelli <tlimoncelli@stackoverflow.com>

* PacketframeProvider minor cleanup

* Packetframe v4 moved to production

* Packetframe Provider: Finish the rest of provider steps

* Packetframe: Make stylistic changes, update nameservers, apikey -> token

Co-authored-by: Steven Vernick <78868407+svernick@users.noreply.github.com>
Co-authored-by: Tom Limoncelli <tlimoncelli@stackoverflow.com>
2022-01-05 12:09:46 -05:00
Steven Vernick
1f7889dbd3
AKAMAIEDGEDNS: fix staticcheck warnings/errors (#1346)
* downcase TLSA

* Akamai provider

* Akamai provider

* EdgeDNS provider

* AkamaiEdgeDNS provider

* AkamaiEdgeDNS provider

* AkamaiEdgeDNS provider

* AKAMAIEDGEDNS: fix staticcheck warnings/errors

Co-authored-by: Tom Limoncelli <tlimoncelli@stackoverflow.com>
2021-12-23 15:16:37 -05:00
Tom Limoncelli
9f720d1084
CLEANUP: Skip DualProvider tests if Cannot(DocDualHost) (#1345)
* Skip DualProvider tests if Cannot(DocDualHost)
* go generate
* Fix HEXONET domain
2021-12-21 12:23:11 -05:00
Vincent Hagen
6fc3534aa3
Add INCLUDE statement to include records from other domains (#1219) 2021-07-25 12:03:58 -04:00
Steven Vernick
be1f03fb75
NEW PROVIDER: AkamaiEdgeDNS (#1174)
* downcase TLSA

* Akamai provider

* Akamai provider

* EdgeDNS provider

* AkamaiEdgeDNS provider

* AkamaiEdgeDNS provider

* AkamaiEdgeDNS provider

Co-authored-by: Tom Limoncelli <tlimoncelli@stackoverflow.com>
2021-06-22 10:24:49 -04:00
Tom Limoncelli
1cea854e1c
MAINT: Adopt go 1.16's embed feature (#1162)
* MAINT: Switch from esc to embed
* Simplify
* Update minimum go version in docs and pipelines
* go generate
2021-06-04 15:50:47 -04:00
Tom Limoncelli
dedc7c6e17 go generate 2021-05-21 15:09:45 -04:00
Tom Limoncelli
43ceee5452 go generate 2021-05-18 07:21:02 -04:00
Tom Limoncelli
1ec61c536b
Release v3.9.0 (#1156)
* Release v3.9.0

* go generate
2021-05-13 12:48:05 -04:00
fuero
4586ad1281
Direct SOA record management (#1115)
* Adds SOA record to JS, zone parsing and record validation

* adds JS parsing test for SOA record

* fix validation & regenerates static resources

* Adds label and target test for SOA record

* Removes serial from SOA JS macro

* Adds generated resources

* reformat with gofmt

Co-authored-by: Tom Limoncelli <tlimoncelli@stackoverflow.com>
2021-05-04 15:47:26 -04:00
Tom Limoncelli
ac436fb0ec
go generate (#1145)
* go generate
2021-05-04 14:16:31 -04:00
Phil Pennock
059b58ed9e
GANDI_V5: supports DS records already (#1112)
* Simply mark DS as supported, let existing tests handle it.
* Fix trivial typo in diagnostic feedback from model SetTargetDSString()
* The support matrix includes more changes because it was stale.
2021-03-29 10:04:36 -04:00
Julius Rickert
c883c1ac68
New provider and new registrar: hosting.de (#1041)
* Add http.net provider

* Rename httpnetProvider

* Add SSHFP capability

* Add paging for records

* Sort documentation notes alphabetically

* Add custom base URL

* Extend documentation for custom base URL

* - renamed to hosting.de
- Fix EnsureDomainExists
- GetNameservers read from NS Records

* Replaced http.net with hosting.de
Contributor Support from hosting.de

* baseURL for hosting.de in documentation
replaced %v with %w for errors
special handling for txt records using .TxtStrings

* removed last references to rc.Target
fixed Trim of last dot

* Re-engineer TXT records for simplicity and better compliance (#1063)

Co-authored-by: Tom Limoncelli <tlimoncelli@stackoverflow.com>
Co-authored-by: Oliver Dick <o.dick@hosting.de>
Co-authored-by: Oliver Dick <31733320+membero@users.noreply.github.com>
2021-03-08 19:25:55 -05:00
Tom Limoncelli
8dea9edc34
Re-engineer TXT records for simplicity and better compliance (#1063)
TXT records are now handled different.

1. The raw input from dnsconfig.js is passed all the way to the provider. The provider can determine if it can or can't handle such records (auditrecords.go) and processes them internally as such.
2. The CanUseTXTMulti capability is no longer needed.

* DSPs now register a table of functions
* Use audits for txt record variations
* unit tests pass. integration fails.
* fix deepcopy problem
* rename to AuditRecordSupport
* Reduce use of TXTMulti
* Remove CanUseTXTMulti
* fix Test Skip
* fix DO
* fix vultr
* fix NDC
* msdns fixes
* Fix powerdns and cloudflare
* HEDNS: Fix usage of target field to resolve TXT handling (#1067)
* Fix HEXONET

Co-authored-by: Robert Blenkinsopp <robert@blenkinsopp.net>
Co-authored-by: Jakob Ackermann <das7pad@outlook.com>
2021-03-07 13:19:22 -05:00
Tom Limoncelli
975055fb20
BUG: D_EXTEND should not apply DEFAULTS{} (#1055)
* BUG: D_EXTEND should not apply DEFAULTS{}

Fixes https://github.com/StackExchange/dnscontrol/issues/1042

* go generate
2021-03-01 10:53:29 -05:00
Tom Limoncelli
a2042c2eda
NS1: Support NS1_URLFWD (#1046) 2021-02-10 11:57:15 -05:00
Tom Limoncelli
bb57893044 go generate 2021-01-30 12:02:13 -05:00
Tom Limoncelli
c017df5982 go generate 2021-01-20 13:47:30 -05:00
Tom Limoncelli
6443a31ca8
Fix REV and PTR (#979)
* Fix REV and PTR
2020-12-03 08:33:37 -05:00
Sven Peter
f81260ba71
INWX: enable multi txt support (#981)
* INWX: enable MultiTXT support

* run go generate to update docs
2020-11-29 13:54:34 -05:00
Tom Limoncelli
1f471a15b9
DIGITALOCEAN: Support TXTMulti with caveats (#949)
* DIGITALOCEAN: Support TXTMulti with caveats
* go get github.com/digitalocean/godo
* DIGITALOCEAN: Enable CI tests
2020-11-18 08:22:31 -05:00
Jakob Ackermann
2b50af0cbc
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 09:44:21 -04:00
Tom Limoncelli
194aa09158
Clean up from Tom's git mistakes (#869)
* Better error messages

* go generate
2020-09-21 09:47:02 -04:00
Patrik Kernstock
9ad742fc22
INWX: Support creating domains (#855)
* Support create-domains for INWX

* Use own function to decide which NS to use when sandbox

* Updated docs via go generate

* Move domainIndex into inwxAPI struct

* Changed getDefaultNameservers() IF

* Make Tom happy

* Updated docs via go generate
2020-09-21 09:27:50 -04:00