Commit graph

276 commits

Author SHA1 Message Date
Tom Limoncelli 95ea4eedc9
CLOUDFLARE: Bump cloudflare/cloudflare-go v0.33.0 => v0.34.0 (#1438) 2022-03-04 08:46:12 -05:00
Tom Limoncelli 1f741088a9
MAINT: Bump github.com/miekg/dns from 1.1.45 to 1.1.46 (#1431) 2022-03-01 14:53:10 -05:00
Tom Limoncelli 0b15a3a6d2
MAINT: Update dependencies (#1429) 2022-03-01 13:01:51 -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 272064a603
TRANSIP: Bump github.com/transip/gotransip/v6 from 6.11.0 to 6.14.0 (#1392) 2022-02-02 11:59:13 -05:00
Tom Limoncelli a3177ebb3d
MAINT: Update dependencies (#1388)
* MAINT: Update dependencies

* Increase CCI timeout because Cloudflare is so damn slow
2022-02-01 14:47:27 -05:00
dependabot[bot] ac9d1324ef
Bump github.com/softlayer/softlayer-go from 1.0.3 to 1.0.4 (#1355)
Bumps [github.com/softlayer/softlayer-go](https://github.com/softlayer/softlayer-go) from 1.0.3 to 1.0.4.
- [Release notes](https://github.com/softlayer/softlayer-go/releases)
- [Commits](https://github.com/softlayer/softlayer-go/compare/v1.0.3...v1.0.4)

---
updated-dependencies:
- dependency-name: github.com/softlayer/softlayer-go
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Tom Limoncelli <tlimoncelli@stackoverflow.com>
2022-01-03 10:25:26 -05:00
Tom Limoncelli e063812a5f
MAINT: Update dependencies (#1361) 2022-01-03 10:02:21 -05:00
Tom Limoncelli 531aa6e313
DIGITALOCEAN: Upgrade to godo 1.73.0 (#1325) 2021-12-08 12:18:19 -05:00
Tom Limoncelli 00b2a3a9f8
Upgrade dependencies (#1324)
* Upgrade dependencies

* Revert "Upgrade dependencies"

This reverts commit 1b9df3a4bb.

* all but gandi
2021-12-08 10:56:48 -05:00
Jaye Doepke 900d4042e8
ROUTE53: Adopt aws-sdk-go-v2 (#1321)
* Switch to aws-sdk-go-v2

AWS has released v2 of their SDK for Go.

See: https://aws.github.io/aws-sdk-go-v2/

One big advantage of this is no longer needing to export the
`AWS_SDK_LOAD_CONFIG=1` env var when using named profiles.

* Update integration test README

* Reenable pager601 and pager1201 integration tests for AWS Route53

* Implement intelligent batching for Route53 record changes

The AWS Route53 API for batch record changes limits the request size to
the smaller of:

- 1000 records.
- 32000 characters total for record values.

Also UPSERTs count as double (a DELETE and then a CREATE).

This commit changes how the record ChangeBatches are created to
respect these limits.

* Remove old comments

Co-authored-by: Tom Limoncelli <tlimoncelli@stackoverflow.com>
2021-12-07 16:29:29 -05:00
Tom Limoncelli 215f6ed525
Release v3.13.0 (#1310)
* Remove length checking from TxtNoMultipleStrings

All functions in should test for only one condition. There already is a
function that tests for long TXT records: TxtNoLongStrings.
Add calls to TxtNoLongStrings in all providers that use
TxtNoMultipleStrings, to keep functionality, except for NS1 and ClouDNS,
which allow for any TXT record length, but not for multiple strings per
TXT.

* Release v3.13.0

* Release v3.13.0

Co-authored-by: Norman Stetter <norman.stetter@zeit.de>
2021-11-27 14:46:37 -05:00
Tom Limoncelli 866aa798e2
Update deps (#1301) 2021-11-01 16:10:29 -04:00
Tom Limoncelli 186e139bbe
Update dependencies (#1294) 2021-10-26 12:09:34 -04:00
Tom Limoncelli eef8c25a95
Upgrade otto to 20210927222213 (#1279)
* Update deps

* Upgrade otto 20210614181706 -> 20210927222213
2021-10-03 17:52:39 -04:00
Tom Limoncelli 79d3552312
Update deps (#1278) 2021-10-03 17:23:48 -04:00
Brian Hartvigsen d8941a04bc
CLOUDFLARE: Use cloudflare-go (#1267)
* First pass at moving to cloudflare-go vs hand made implementation of cloudflare's API

* Final changes to use cloudflare-go

* Fix for proxy configuration failing

Forgot to set the ID when we created a new records.  This didn't fail in the integrations tests so I missed it.

* Add integration test

To prevent something like what I did from happening in the future.

* Fix bad messaging
2021-09-30 07:09:42 -04:00
Tom Limoncelli 0bf229e36d
Update dependencies (#1249) 2021-09-02 10:44:24 -04:00
Tom Limoncelli fd6478a8ab
update deps (#1231) 2021-08-05 15:06:44 -04:00
Tom Limoncelli 19769da229
update deps (#1228) 2021-08-05 14:46:05 -04:00
dependabot[bot] 3263af9a1a
Bump github.com/PuerkitoBio/goquery from 1.7.0 to 1.7.1 (#1226)
Bumps [github.com/PuerkitoBio/goquery](https://github.com/PuerkitoBio/goquery) from 1.7.0 to 1.7.1.
- [Release notes](https://github.com/PuerkitoBio/goquery/releases)
- [Commits](https://github.com/PuerkitoBio/goquery/compare/v1.7.0...v1.7.1)

---
updated-dependencies:
- dependency-name: github.com/PuerkitoBio/goquery
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-08-05 11:41:51 -04:00
dependabot[bot] 0847242e9f
Bump github.com/aws/aws-sdk-go from 1.38.70 to 1.39.1 (#1203)
* Bump github.com/aws/aws-sdk-go from 1.38.70 to 1.39.1

Bumps [github.com/aws/aws-sdk-go](https://github.com/aws/aws-sdk-go) from 1.38.70 to 1.39.1.
- [Release notes](https://github.com/aws/aws-sdk-go/releases)
- [Changelog](https://github.com/aws/aws-sdk-go/blob/main/CHANGELOG.md)
- [Commits](https://github.com/aws/aws-sdk-go/compare/v1.38.70...v1.39.1)

---
updated-dependencies:
- dependency-name: github.com/aws/aws-sdk-go
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

* Update deps

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Tom Limoncelli <tlimoncelli@stackoverflow.com>
2021-07-07 18:45:45 -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
dependabot[bot] 00595a895f
Bump github.com/Azure/go-autorest/autorest/azure/auth (#1198)
Bumps [github.com/Azure/go-autorest/autorest/azure/auth](https://github.com/Azure/go-autorest) from 0.5.7 to 0.5.8.
- [Release notes](https://github.com/Azure/go-autorest/releases)
- [Changelog](https://github.com/Azure/go-autorest/blob/master/CHANGELOG.md)
- [Commits](https://github.com/Azure/go-autorest/compare/autorest/azure/auth/v0.5.7...autorest/azure/auth/v0.5.8)

---
updated-dependencies:
- dependency-name: github.com/Azure/go-autorest/autorest/azure/auth
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-07-02 15:44:40 -04:00
Tom Limoncelli 0630c185cf
Release v3.10.1 (#1194)
* Release v3.10.1

* Update dependencies

* RELENG: Update doc to verify version string

* Fix codeql issue
2021-07-01 10:17:43 -04:00
dependabot[bot] d45aa7c76b
Bump github.com/miekg/dns from 1.1.42 to 1.1.43 (#1184)
Bumps [github.com/miekg/dns](https://github.com/miekg/dns) from 1.1.42 to 1.1.43.
- [Release notes](https://github.com/miekg/dns/releases)
- [Changelog](https://github.com/miekg/dns/blob/master/Makefile.release)
- [Commits](https://github.com/miekg/dns/compare/v1.1.42...v1.1.43)

---
updated-dependencies:
- dependency-name: github.com/miekg/dns
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-07-01 09:28:46 -04:00
Phil Pennock 06c59f09a7
EXOSCALE: update client lib to v0.59.0 (#1183)
REGRESSION and BUILD fix.  dnscontrol compiles with this but I can't test the
EXOSCALE behavior to be sure it's logically sound.

The dependency was v1.19.0 but this git tag has been withdrawn and the go.mod
for that git repository contains:

    retract v1.19.0 // Published accidentally.

Per <https://proxy.golang.org/github.com/exoscale/egoscale/@v/v1.19.0.info> the
timestamp for the bogus v1.19.0 dependency is 2019-10-29, which corresponds to
v0.19.0.

On 2020-02-27, the dnscontrol repo updated this dependency to v0.23.0, so it
now being v1.19.0 (== v0.19.0) is a REGRESSION.

I suggest that the maintainers purge this bogus v1.19.0 from their systems to
try to prevent it leaking in again in future.
2021-06-29 17:04:42 -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 6beaafdc9b
upgrade dependencies (#1169)
* upgrade dependencies

* go mod tidy
2021-06-03 11:19:53 -04:00
Tom Limoncelli 88c05d9484
Update deps (#1141) 2021-05-02 11:04:42 -04:00
Tom Limoncelli 1cc2e79c59
Update depends (#1135)
* Update depends
* Update releng docs
2021-04-22 16:07:53 -04:00
Tom Limoncelli 469e04478c
Update primary modules (#1123)
* Update primary modules
* fix juju/errors
* go mod tidy
2021-04-16 13:48:10 -04:00
Rashad J a65b310520
perf(go sdk): introducing semver to HEXONET provider (#1120)
* build(go sdk): fixed outdated dependencies issue

* refactor(.back files): removed .bak files

Co-authored-by: Rashad Jamara <rjamara@hexonet.net>
Co-authored-by: Tom Limoncelli <tlimoncelli@stackoverflow.com>
2021-04-13 07:30:32 -04:00
Tom Limoncelli ef2a109207
Update dependencies (#1110) 2021-03-28 15:08:01 -04:00
Tom Limoncelli 78e8daae9a
Update dependencies (#1100) 2021-03-21 15:35:28 -04:00
Tom Limoncelli 49b065ec4f go update 2021-03-08 20:16:54 -05:00
Tom Limoncelli 5388cfc475 Update dependencies 2021-03-07 14:44:32 -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 21e85e6528
"Target" RecordConfig should not be exported (#1061)
* Unexport RecordConfig.Target
* Fix tests
* HEDNS: Fix usage of target field to resolve TXT handling (#1067)

Co-authored-by: Robert Blenkinsopp <robert@blenkinsopp.net>
2021-03-04 18:58:23 -05:00
Jan-Philipp Benecke 37b02b6540
New Feature: JS formatter and prettifier (#917)
FYI: This is an experimental feature. It depends on an external module that may not be supported in the long term.

* PoC: JS formatter
* No default value for output file
2021-03-02 15:51:27 -05:00
Tom Limoncelli 27edd04bbd
update dependencies (#1072) 2021-03-01 21:41:29 -05:00
Tom Limoncelli 57a1231ea1 go mod tidy 2021-03-01 20:51:34 -05:00
Tom Limoncelli a2042c2eda
NS1: Support NS1_URLFWD (#1046) 2021-02-10 11:57:15 -05:00
Tom Limoncelli 9c0092edcb
Release v3.6.0 (#1033)
* Release v3.6.0
* Update go modules
2021-01-30 09:49:22 -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 20a726df27
go get github.com/hexonet/go-sdk (#1029) 2021-01-21 14:55:34 -05:00
Yuhui Xu 6efedd689d
New feature: FETCH() permits http gets in dnsconfig.js (#1007)
add PANIC() and error-handled FETCH()
2021-01-06 10:45:32 -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 99ae7b4418
update more deps (#988)
* update all deps that i can safely do
2020-12-03 10:35:12 -05:00
Tom Limoncelli 432ec2bb85
update deps (#987)
* update deps

go get -u gopkg.in/yaml.v2
go get -u google.golang.org/api
go get -u golang.org/x/oauth2
go get -u golang.org/x/net
go get -u github.com/urfave/cli/v2
go get -u github.com/miekg/dns
go get -u github.com/digitalocean/godo
go get -u github.com/babolivier/go-doh-client
go get -u github.com/aws/aws-sdk-go
go get -u github.com/DisposaBoy/JsonConfigReader
go get -u github.com/Azure/azure-sdk-for-go

* go mod tidy
2020-12-03 10:02:15 -05:00
Tom Limoncelli 063d550816
js_test.go should generate & test zonefile output too (#986)
* js_test.go: Do a zonefile test if $TESTNAME/parse_tests/{zonefile} exists.
* Add parse_tests zone files for all the tests that make sense.
* js_test.go: Addd the test datafile when displaying failures.
* 007-importTransformTTL.js: Was referring to a non-existent domain.
* 012-duration.js: Had duplicate DNS records.
* 029-dextendsub.js: Move CF-related tests to separate test.
* validate.go: Report non-existent domains as an error.
* cloudflareProvider.go: newCloudflare should not talk to the API.
2020-12-03 09:33:39 -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
Tom Limoncelli 3a2b1b2f7b
Internal: deps updates and linting (#905)
* Update dependencies
* writing-providers.md: Update for Go Mod, etc.
* Linting pkg/version
* s/CloudflareAPI/api/g
* s/ApiKey/APIKey/g
* s/ApiToken/APIToken/g
* s/ApiUser/APIUser/g
2020-10-18 14:04:50 -04:00
Tom Limoncelli a7964652d8 go get -u github.com/aws/aws-sdk-go github.com/miekg/dns golang.org/x/net 2020-10-12 12:08:43 -04:00
Tom Limoncelli da1cbad4ec
HEXONET: Implement get-zones, fix module problem (#898)
* VULTR: Update govultr to v1.0.0 (fixes #892) (#897)

* go get -u github.com/hexonet/go-sdk

* Fix HEXONET providers.json entry

* providers.json: json commma

* providers.json: fmtjson

* HEXONET: Implement get-zones. Fix tests and docs.

* fixup!

* Update azure test failures

* Move version info into its own package

* Use new version system
2020-10-12 11:45:44 -04:00
Tom Limoncelli 824ed2b75e
Update AWS and goquery dependencies (#899) 2020-10-08 16:50:42 -04:00
Patrick Gaskin 26c7c356f4
VULTR: Update govultr to v1.0.0 (fixes #892) (#897) 2020-10-08 16:12:56 -04:00
Tom Limoncelli 2fb72ac006
go get -u github.com/robertkrimen/otto (#889) 2020-10-07 16:26:49 -04:00
Tom Limoncelli 43537fbfd8 Update dependencies 2020-10-07 16:23:42 -04:00
Tom Limoncelli 678540cfdd
GANDI_V5: Use github.com/go-gandi/go-gandi, not github.com/tiramiseb/go-gandi (#883) 2020-10-02 13:53:03 -04:00
Jan-Philipp Benecke 52c50c88b3
PowerDNS: Implemented AUTODNSSEC (#856)
* PowerDNS: Implemented AUTODNSSEC
2020-09-17 08:46:15 -04:00
Tom Limoncelli 9554332ef5 Update dependencies 2020-09-04 16:29:57 -04:00
Tom Limoncelli 4432d38252
go get -u github.com/miekg/dns v1.1.31 (#846) 2020-09-04 16:26:56 -04:00
Mike Cochrane d6f3f401a5
NEW PROVIDER: DOH: Read-only Registrar that validates NS records (#840) 2020-09-04 10:22:41 -04:00
Tom Limoncelli 2f02deb0b0
Update dependencies (#838)
* Update dependencies

go get -u github.com/Azure/azure-sdk-for-go
go get -u github.com/Azure/go-autorest/autorest/azure/auth
go get -u github.com/aws/aws-sdk-go
go get -u golang.org/x/net
go get -u google.golang.org/api

* go tidy
2020-08-30 20:52:56 -04:00
Tom Limoncelli de308c0952
Lint: Fix ST1005: error strings should not be capitalized (#834) 2020-08-30 19:52:37 -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
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
Tom Limoncelli 541bb805da
linting (#777) 2020-07-06 20:18:24 -04:00
Tom Limoncelli 4979f2938b go get -u github.com/Azure/go-autorest/autorest/to 2020-06-26 12:53:39 -04:00
Tom Limoncelli 02b847b333 go get -u github.com/Azure/go-autorest/autorest/azure/auth 2020-06-26 12:53:21 -04:00
Tom Limoncelli c178409f53 go get -u github.com/Azure/azure-sdk-for-go 2020-06-26 12:52:55 -04:00
Tom Limoncelli 785e6d7dc7 go get -u github.com/aws/aws-sdk-go 2020-06-26 12:52:05 -04:00
Tom Limoncelli 5012021890 go get -u google.golang.org/api 2020-06-26 12:51:32 -04:00
Tom Limoncelli 67b3d9f98d go get -u github.com/TomOnTime/utfutil 2020-06-26 12:51:13 -04:00
Tom Limoncelli c0f4f1247d go get -u golang.org/x/net 2020-06-26 12:50:56 -04:00
Tom Limoncelli 505062b628
update AWS/GDNS/Azure deps (#768) 2020-06-18 13:59:17 -04:00
Tom Limoncelli 12e9d2bdd5
Update dependencies (#763)
* gcloud natively supports records of type DS

* doc fix: CanUseDs -> CanUseDS capitalisation fix

* Update github.com/stretchr/testify golang.org/x/tools google.golang.org/api gopkg.in/yaml.v3

Co-authored-by: Matthew Huxtable <matthew.huxtable@sparx.co.uk>
2020-06-09 14:00:20 -04:00
Tom Limoncelli f884e7615f go mod tidy 2020-06-02 07:01:09 -04:00
Tom Limoncelli 1d263c4dd6 Vendor github.com/mittwald/go-powerdns 2020-06-02 06:53:41 -04:00
Tom Limoncelli 0f0384c07c go get -u github.com/aws/aws-sdk-go 2020-05-30 10:10:18 -04:00
Tom Limoncelli 380524e81a go get -u github.com/stretchr/testify 2020-05-30 10:08:38 -04:00
Tom Limoncelli 1fdf401f30 go get -u golang.org/x/net 2020-05-30 10:05:40 -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
Tom Limoncelli 4ef4b9282a GCLOUD: go get -u google.golang.org/api 2020-05-23 10:18:28 -04:00
Tom Limoncelli 8d37020e30 DIGITALOCEAN: go get -u github.com/digitalocean/godo 2020-05-23 10:15:05 -04:00
Tom Limoncelli 4c40130951 ROUTE53: go get -u github.com/aws/aws-sdk-go 2020-05-23 10:12:48 -04:00
Tom Limoncelli 3346b3cee4 AZURE_DNS: go get -u github.com/aws/aws-sdk-go 2020-05-23 10:09:56 -04:00
Amelia Aronsohn b2b0ed4154
Update DNSimple Provider to api client 0.62 (#739)
* Update DNSimple-go to 0.61

This adds support for contexts, exports all return values, Adds ZoneRecordAttributes to fix support for blank record names.

* Add UserAgent to client

* Update Integration test for DNSimple

We now support Empty TXT, however we do not support Null MX yet.

* Bump to dnsimple-go 0.62 & use dnsimple.String()
2020-05-13 16:37:49 -04:00
Tom Limoncelli 409ebf65c1
Update AWS and Azure dependencies (#731)
* go: github.com/aws/aws-sdk-go upgrade => v1.30.19

* go: github.com/Azure/azure-sdk-for-go upgrade => v42.0.0+incompatible
2020-05-02 11:33:06 -04:00
Tom Limoncelli 26abff8884 go: google.golang.org/api upgrade => v0.22.0 2020-04-22 10:34:24 -04:00
Tom Limoncelli 3b058eae65 cleanup! 2020-04-21 15:46:22 -04:00
Tom Limoncelli 366c190942
Update dependencies (#723)
* go get -u github.com/Azure/azure-sdk-for-go

* github.com/aws/aws-sdk-go upgrade => v1.30.11

* github.com/digitalocean/godo upgrade => v1.35.1

* go get -u github.com/golang/protobuf
2020-04-21 15:41:58 -04:00
Tom Limoncelli 2a44a89d1b go get -u github.com/digitalocean/godo 2020-03-27 12:24:45 -04:00
Tom Limoncelli 5b1ad46129 go get -u github.com/aws/aws-sdk-go 2020-03-27 12:24:45 -04:00
Tom Limoncelli 1479117888 go get -u github.com/Azure/azure-sdk-for-go 2020-03-27 12:24:45 -04:00
Tom Limoncelli d14f00ce06
go get -u github.com/tiramiseb/go-gandi (#711) 2020-03-27 12:09:56 -04:00
Vatsalya Goel 34c73d4025
AZURE_DNS: Update azure sdk for go (#709)
* go get -u github.com/Azure/azure-sdk-for-go

* go mod tidy && go mod vendor

* update azure autorest
2020-03-26 09:21:12 -04:00
Tom Limoncelli 50d52775f8 go get -u github.com/urfave/cli/v2 2020-03-22 15:53:38 -04:00
Tom Limoncelli cb70070cda go get -u github.com/miekg/dns 2020-03-22 15:49:28 -04:00
Tom Limoncelli cb604e07c3 go -u github.com/digitalocean/godo 2020-03-22 15:46:51 -04:00
Tom Limoncelli 1a4dc215e8 go get -u github.com/aws/aws-sdk-go 2020-03-22 15:43:50 -04:00
Tom Limoncelli 1b5935d1af
Release 3.0.0 Candidate (#699)
Final changes before V3.0.0 release

* Remove old Gandi.  Fixes #575
* Many cleanups
* go mod tidy && go mod vendor

* integration_test.go: Output subtest name

* Cleanups

* integration_test.go: Description should include sub-test name
* Add a whitespace test to js/parse_tests/017-txt.js

* Cloudflare strips whitespace from end of TXT

* Fixes https://github.com/StackExchange/dnscontrol/issues/700

* Whitespace at end of TXT records

Name.com strips the whitespace from the end of a TXT record. There's
nothing we can do other than file a bug.

* Fixes https://github.com/StackExchange/dnscontrol/issues/701
2020-03-22 13:38:37 -04:00
Tom Limoncelli bbbb0c8c95
Update modules (#691)
* go get -u github.com/aws/aws-sdk-go
* get -u github.com/tiramiseb/go-gandi
* go get -u google.golang.org/api

Co-authored-by: Tom Limoncelli <tlimoncelli@stackoverflow.com>
2020-03-10 16:26:06 -04:00
Tom Limoncelli 4edf360854
get-zones output should work as input into preview (#688)
* Add tests for get-zones
* fix CAA, SSHFP, TLSA and other bugs
* New format for get-zones: "djs" which is js but uses "disco commas"
* Print diffs using github.com/andreyvit/diff

Co-authored-by: Tom Limoncelli <tlimoncelli@stackoverflow.com>
2020-03-10 11:32:47 -04:00
Tom Limoncelli 67e78f7e15
refactor into groups (#684)
* Refactor tests into "groups", each with its own filter (not/only/requires) to select which providers are appropriate.
* Test driver code is now a lot more simple and clear.
* Add support for not(), only(), and requires() as a way to select/reject providers for a test.
* Add docs explaining how to add tests
* Logging messages are much cleaner now, especially when tests are skipped.
* -start and -end now refer to test groups, not individual tests.  Log messages list the group numbers clearly.
* Add stringer for Capabilities
* Change the order of the tests so that simple tests are first
* Removed knownFailures from providers.json
* fmtjson providers.json

Co-authored-by: Tom Limoncelli <tlimoncelli@stackoverflow.com>
2020-03-10 10:13:20 -04:00
Joel Margolis a57bf35788
EXOSCALE: Update exoscale/egoscale client to v0.23.0 (#664)
* Update Exoscale provider

* Update vendor folder for exoscale/egoscale v0.23.0

* Fix typos and SRV parsing

* Add . at the end of SRV records for exoscale
2020-02-27 23:06:12 -05:00
Joel Margolis 1232c17293
HEXONET: Update hexonet-sdk to v2.2.3+incompatible (#662)
* Update hexonet-sdk to v2.2.3+incompatible

* Update vendor

* Go mod tidy
2020-02-27 13:04:17 -05:00
Tom Limoncelli 1616c50ba7
GANDI_V5: Upgrade to newest github.com/tiramiseb/go-gandi 2020-02-27 12:06:24 -05:00
Tom Limoncelli 9812ecd9ff
BIND: Improve SOA serial number handling (#651)
* github.com/miekg/dns
* Greatly simplify the logic for handling serial numbers. Related code was all over the place. Now it is abstracted into one testable method makeSoa. This simplifies code in many other places.
* Update docs/_providers/bind.md: Edit old text. Add SOA description.
* SOA records are now treated like any other record internally. You still can't specify them in dnsconfig.js, but that's by design.
* The URL for issue 491 was wrong in many places
* BIND: Clarify GENERATE_ZONEFILE message
2020-02-23 13:58:49 -05:00
Amelia Aronsohn b45c6b6b6c
DNSimple: Implement GetZones and ListZones (#637)
* Update to latest dnsimple-go

* Implement GetZoneRecords

* Better naming

* Return NS records in GetZoneRecords

* Be clearer with the comment.

As an employee I confirm this is exactly how this works. No guessing needed.

* Respect that Puncycode encoding can blow up

* Implement ListZones and the ZoneLister Interface

* Categorize DNSIMPLE

* Update docs with go generate

* vendor modules

* Don't store intermediary Zone data
2020-02-20 14:52:19 -05:00
Tom Limoncelli 87ad01d194
Add "get-zone" command (#613)
* Add GetZoneRecords to DNSProvider interface
* dnscontrol now uses ufave/cli/v2
* NEW: get-zones.md
* HasRecordTypeName should be a method on models.Records not models.DomainConfig
* Implement BIND's GetZoneRecords
* new WriteZoneFile implemented
* go mod vendor
* Update docs to use get-zone instead of convertzone
* Add CanGetZone capability and update all providers.
* Get all zones for a provider at once (#626)
* implement GetZoneRecords for cloudflare
* munge cloudflare ttls
* Implement GetZoneRecords for cloudflare (#625)

Co-authored-by: Craig Peterson <192540+captncraig@users.noreply.github.com>
2020-02-18 08:59:18 -05:00
Vatsalya Goel cd680cc738
Upgraded Azure SDK to 39.1.0 (#627)
* Upgrade Azure DNS API
* vendor modules
* Fixed AZURE_DNS Empty TXT Record
* Fix preview
2020-02-18 08:45:31 -05:00
Patrick Gaskin 2e76c0e9d1
Updated govultr to v0.2.0 (#619) (#624) 2020-02-17 10:47:34 -05:00
Tom Limoncelli 5a5eeb524c "go mod tidy" 2020-02-14 15:03:04 -05:00
Tom Limoncelli 6a0c6a517c
Update github.com/go-acme/lego (#623) 2020-02-14 13:59:28 -05:00
Juho Teperi 737c8b5616
Update digitalocean module (#622)
Related #619
2020-02-14 06:40:13 -05:00
Tom Limoncelli f708f19535
Update many modules (#620)
* Update many modules.

go get -u golang.org/x/net
go get -u github.com/aws/aws-sdk-go
go get -u golang.org/x/oauth2
go get -u google.golang.org/api
go get -u gopkg.in/yaml.v2
go mod tidy

* Update modules

go get -u github.com/tiramiseb/go-gandi
go get -u github.com/miekg/dns
go mod tidy
2020-02-12 21:16:35 -05:00
Tom Limoncelli 66a290067a git mod tidy 2020-02-12 20:13:18 -05:00
Tom Limoncelli cad8a279a8 fixup! 2020-02-12 20:09:06 -05:00
Tom Limoncelli 891c4162df
Upgrade urfave/cli to v2 (#614)
* Upgrade cli to v2
* Re-vendor
2020-02-03 12:44:11 -05:00
Tom Limoncelli 92b51dbc65
Update github.com/mjibson/esc (#515)
* Update github.com/mjibson/esc

* Update github.com/mjibson/esc
* Fix generate.go to new signature for esc.Run

* Internal: Upgrade to lastest "esc"
2020-01-29 13:43:25 -05:00
Tom Limoncelli f6ce421fdd
NEW PROVIDER: GANDI_V5 (deprecates GANDI) (#572)
* GANDI_v5: Add Registrar support
* Add GANDI deprecation warning
* vendor github.com/tiramiseb/go-gandi
2020-01-20 14:13:32 -05:00
Tom Limoncelli 16d0043cce
Switch from govendor to go modules. (#587)
Thanks to @BenoitKnecht for leading the way on this.
2020-01-18 14:40:28 -05:00