Commit graph

88 commits

Author SHA1 Message Date
Tom Limoncelli
ffdb4b6271
DOCS: Add page for how to maintain docs (#1780) 2022-10-28 15:14:28 -04:00
Steffen Zieger
ad8f436330
DOCS: fix docker usage in README (#1751) 2022-09-16 10:47:04 -04:00
Jeffrey Cafferata
dad1d4c2c5
DOCS: Fixed typo "deprecation" (#1739) 2022-09-06 08:21:57 -04:00
Tom Limoncelli
a18710b284
DOCS: Clean up old docs and scripts (#1728) 2022-08-31 08:34:24 -04:00
Andy Hall
c9b166ff0f
DOCS: Add MacPorts to Install section (#1729) 2022-08-27 09:03:44 -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
Chris Hunt
b4ebe5b54b
maint: Update GoReleaser and CircleCI configs to publish multi-arch Docker image (#1682)
- Improve the filtering for the `release` job only on tag creation.
- Removes the dependency on `integration-tests` job from the `release` job. The flaky tests were frequently blocking the release.
  - Integration tests will now only run on PRs.
- Restores the Docker build/publish
  - Includes amd64, arm64, and i386 multi-arch manifest
- Uploads [artifacts](https://app.circleci.com/pipelines/github/StackExchange/dnscontrol/1285/workflows/b40ce89b-5a60-4ed2-874b-d47f383122b2/jobs/10051/artifacts) to CircleCI
- Fixes linting issues with README
- Add [CircleCI Insights badge](https://github.com/StackExchange/dnscontrol/tree/fix/cci#dnscontrol) to README
- Uploads deb and rpm packages to [CloudSmith](https://cloudsmith.io/~stackoverflow/repos/dnscontrol/packages/)
  - TODO: It looks like CloudSmith treats both formats as duplicates and appends a `-1` to the version.
  - TODO: Push the Docker images to CloudSmith as well (alternate to Docker Hub and their aggressive rate limits).
- TODO: The automated release notes regex patterns don't work for most of the commits. See [releases/tag/v3.18.2-pre013](https://github.com/StackExchange/dnscontrol/releases/tag/v3.18.2-pre013)
2022-08-12 16:08:16 -04:00
Tom Limoncelli
83a4b6a2f4
Remove ACTIVEDIRECTORY_PS (#1680) 2022-08-11 13:15:19 -04:00
Tom Limoncelli
f3767f2f0c
Announce OctoDNS decomm. (#1679)
* Announce OctoDNS decomm.

* Update README.md
2022-08-11 11:49:49 -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
Tom Limoncelli
bd1a7f26dc
Update go command (#1650) 2022-08-01 14:43:00 -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
Paul Norman
64dd70969d
Use HTTPS for git endpoint for cloning (#1572)
Github no longer supports the unsecured git protocol,
so use HTTPS instead.
2022-06-22 06:48:13 -04:00
Tom Limoncelli
b140b2eb45
Release v3.17.0 (#1550)
* Release v3.17.0

* release-engineering.md: Add depre instructions
2022-06-19 09:51:07 -04:00
Riyadh Al Nur
1f641c0f58
CHORE: update provider maintainer message (#1526)
Signed-off-by: Riyadh Al Nur <riyadhalnur@verticalaxisbd.com>

Co-authored-by: Tom Limoncelli <tlimoncelli@stackoverflow.com>
2022-06-07 21:51:25 -04:00
Tom Limoncelli
24331d564a
Release v3.16.0 (#1506)
* Release v3.16.0

* Update docs

* Update dependencies

* DOCS: Add missing AutoDNS owner
2022-05-20 15:52:15 -04:00
Brian Hartvigsen
bbecce74bd
DOCS: Update maintainers for Route53 and Cloudflare (#1501)
* Update maintainers for Route53 and Cloudflare

I'm happy to take these two over in addition to EasyName.

* Missed a volunteer request reference

Co-authored-by: Tom Limoncelli <tlimoncelli@stackoverflow.com>
2022-05-08 13:40:36 -04:00
Tom Limoncelli
ffe21c6e6d
creds.json should not be executable under Windows (#1456)
* Skip CAA flag test for LINODE

* Require go 1.18

* Update CCI to use go 1.18

* go mod tidy

* working

* Update creds.json docs

* go generate
2022-03-25 15:20:30 -04:00
Tom Limoncelli
71a849c5af
Release v3.15.0 (#1449)
* Release v3.15.0

* Document deprecations better
2022-03-07 13:51:14 -05:00
Tom Limoncelli
d457bce437
DOCS: Update README with GHA and LE news (#1428) 2022-03-01 11:44:41 -05:00
Julius Rickert
20dad35167
Replace Jekyll highlight tags with fenced code blocks (#1412)
* Replace Jekyll highlight tags with fenced code blocks

Replace Jekyll highlight tags with fenced code blocks.
Canonicalize javascript to js.
Correct highlighting languages.
Add highlighting to code blocks.
Remove leading $ from bash blocks.
Remove empty lines at start and end of code blocks.
Stripped trailing whitespace.

* Fix language of code highlighting
2022-02-17 12:22:31 -05:00
Tom Limoncelli
9ba4bfe0c8
Release v3.14.0 (#1399)
* Release v3.14.0
* Update deprec list
2022-02-05 10:04:58 -05:00
Tom Limoncelli
d904baa9c5
Clarify docker command for docs. (#1397)
* Clarify docker command for docs.
* README.md: Add comments.
* docs/_functions/domain/IGNORE_NAME.md: Fix broken YAML
2022-02-04 16:28:02 -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
Chris Hunt
cc4eba6f16
Migrate Build and Integration Tests to CircleCI (#1292)
* Change the CI from GitHub Actions to [CircleCI](https://app.circleci.com/pipelines/github/StackExchange/dnscontrol?filter=all).
* Adds more platforms in the release as inspired by and discussed in #1260.
2021-12-17 07:14:27 -05:00
Brian Hartvigsen
156c684be6
Initial support for easyname as registrar (#1277)
* Initial support for easyname as registrar

* DRY

Moving a bunch of the HTTP stuff into a single function for cleanliness and ease of future maintianence.

* Seperate API and Provider logic

* Updating error messages and sorting found nameservers

* Adding provider info to OWNERS and README

This also moves a few of the not-actually-DNS Providers to their own section.

* Update README.md

Co-authored-by: Tom Limoncelli <tlimoncelli@stackoverflow.com>
2021-10-04 13:01:38 -04:00
Vincent Hagen
506b6cc32f
Transip provider (#1196)
* Add initial transip provider

* Add GetNameservers to transip

* Add first try to correction function.

* Implemented corrections

* Add docs for transip

* Fix TransIP TTL updates

* Fix transip nameserver records

* Update docs/_providers/transip.md

Co-authored-by: Sven Luijten <11269635+svenluijten@users.noreply.github.com>

Co-authored-by: Sven Luijten <11269635+svenluijten@users.noreply.github.com>
2021-07-07 11:43:10 -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
Tino Teuber
8c98492914
DOCS: Fix typo: will will -> will (#1152) 2021-05-10 07:53:21 -04:00
Tom Limoncelli
42bf027ed3
DOCS: Document how to preview website (#1133)
Doc change. No need for tests.
2021-04-22 15:23:53 -04:00
Vojta Drbohlav
517b0458d6
NEW PROVIDER: DNS Made Easy (#1093)
* implement DNS Made Easy provider

* fix sandbox instructions in DNS Made Easy provider docs

* remove unnecessary blank lines and fix golint warnings

* remove unused deleteRecord method from DNSME api

* remove trailing comma in providers.json

* implement check for TXT records with double quotes for DNSME provider

* implement changing apex NS records

* rename DNSME to DNSMADEEASY

Co-authored-by: Tom Limoncelli <tlimoncelli@stackoverflow.com>
2021-03-17 23:36:42 -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
Nick Gregory
945ffb7e80
NEW PROVIDER: Oracle Cloud (#1021)
* feat: add Oracle provider

* fix ALIAS and NS tests

* return... else if -> return... if

* fix assignment

* remove extraneous blank lines

Co-authored-by: Tom Limoncelli <tlimoncelli@stackoverflow.com>
2021-01-24 15:35:12 -05:00
Tom Limoncelli
50db086278
NEW PROVIDER: MSDNS (#1005)
* New provider
* Add support for SRV records
* Modify ACTIVEDIRECTORY_PS provider to warn that it is deprecated.
2020-12-28 16:07:33 -05:00
Tom Limoncelli
f30610065c
DOCS: Update install instructions (#951) 2020-11-18 16:15:18 -05:00
Tom Limoncelli
9f323e70d1
DOCS: Add pkg.go.dev badge (#939) 2020-11-12 11:22:19 -05:00
Max Horstmann
50d5cbce25
Update build status badge to GH Actions workflow (#933) 2020-11-06 18:45:06 -05:00
eifelmicha
e51688c22d
Update README.md (#915)
Netcup was added in 3.2 https://stackexchange.github.io/dnscontrol/provider-list
2020-10-26 20:20:02 -04: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
Patrick Gaskin
bc8bcf88c4
Require Go Modules to build (#902)
* Add module info to version

* Add warning if built without Go modules

* Updated source installation instructions for Go modules
2020-10-10 10:34:04 -04:00
Tom Limoncelli
75fcc4751e
DNSOVERHTTPS: Add DNSOVERHTTPS to docs (#844) 2020-09-04 11:51:21 -04:00
Tom Limoncelli
57d9cfa356
Docs: Improve install instructions (#824) 2020-08-26 13:40:33 -04:00
Robert Blenkinsopp
74dd34443a
NEW PROVIDER: HEDNS: Hurricane Electric DNS (dns.he.net) (#822)
* Add initial dns.he.net provider support

* Update to new IncrementalDiff interface

* Fix ListZones output for `all` query on `get-zones`

* Refactor authentication code for 2FA with better error checking

* Fix integration test and refactor zone record retrieval

* Add option to use `.hedns-session` file to store sessions between runs

* Add comment on `session-file-path`

* Add integration test for TXT records longer than 255 characters

* Add additional checks for expected responses, and better 2FA error checking

* Minor documentation changes

* Revert "Add integration test for TXT records longer than 255 characters"

This reverts commit 657272db

* Add note on provider fragility due to parsing the web-interface

* Resolve go lint issues

* Clarify security warnings in documentation
2020-08-26 13:38:28 -04:00
Tom Limoncelli
b328bb1b2e
Update README to include install problem (#821)
* Advertise go install problem
2020-08-19 20:01:28 -04:00
Sven Peter
f88c60a8f3
New provider: INWX (#808)
* adds initial support for INWX

* adds all features to the INWX provider

* allows domain for tests in creds.json for INWX

* runs go generate to update docs for INWX

* fixes formatting with gofmt

* changes goinwx to github.com/nrdcg/goinwx v0.8.0

* simplifies inwx sandbox check

* changes inwx unknown key error to a warning

* adds models.PostProcessRecords for inwx records

* replaces strings.TrimRight with [:-1] to remove final dot for inwx

* adds a comment about the domain creds.json key for the inwx provider

* removes warning for invalid creds.json keys in the inwx provider

* adds TOTP calculation support for inwx

* adds comments to inwxProvider

* improves INWX error messages

* adds additional documentation about the TOTP support for INWX

* adds inwx documentation

* bumps goinwx to 0.8.1 to fix the inwx API
2020-08-17 08:45:44 -04:00
Jan-Philipp Benecke
ffd4e46dda
New DNS provider PowerDNS (#748)
* Added PowerDNS as dns provider

* Remove unnecessary comments

* Some tests

* Implemented feedback
2020-05-30 09:54:07 -04:00
Grégoire Henry
8dd66ec605
New provider: AXFR+DDNS (#259) (#729)
* NEW PROVIDER: AXFR+DDNS (#259)

* AXFRDDNS: split GetZoneRecords in two functions

* AXFRDDNS: improve code documentation

* AXFRDDNS: line-wrap documentation

* AXFRDDNS: add simple `named.conf` as example

* AXFRDDNS: improve error messages

* AXFRDDNS: improve doc.

* AXFRDDNS: update `OWNERS`

* Linting and other cosmetic changes

* AXFRDDNS: fix grammar

Co-authored-by: Tom Limoncelli <tlimoncelli@stackoverflow.com>
2020-05-08 10:55:51 -04:00
D3luxee
207f050911
NEW PROVIDER: deSEC (#725)
* Add initial deSEC support

* Handle the api rate limiting

* Fix deleteRR and do some code cleanup

* improve rate limiting and record deletion

* Add documentation for deSEC provider

* README.md update list of supported DNS providers

* deSEC supports SSHFP records

* dynamic minimum_ttl and hint for DNSSec on domain creation

* merge all changes into one single bulk api request

* Fix: actually set the TTL to min_ttl if necessary

* use a constant for apiBase URL

* Fix code comments

* Use PUT instead of PATCH for upsertRR method

* use ' instead of " for java script examples
2020-04-28 14:40:58 -04:00
Tom Limoncelli
fa160b7202
Update README.md (#689)
* Update README.md

Co-authored-by: Tom Limoncelli <tlimoncelli@stackoverflow.com>
2020-03-10 09:18:19 -04:00