Commit graph

1350 commits

Author SHA1 Message Date
Tom Limoncelli b2bef175e0
GANDI_V5: better error handling (#1639)
* GANDI_V5: better error handling

* use newer parsers

* fixup!
2022-07-21 14:30:26 -04:00
Tom Limoncelli 9f5c350825
Upgrade jquery 2.1.4 to 3.6.0 (#1637)
* Upgrade jquery 2.1.4 to 3.6.0

* Clarify gopherjs usage
2022-07-21 09:25:10 -04:00
Tom Limoncelli c4afb08bc4
flattener: Recompile with latest gopherjs (#1635) 2022-07-20 10:47:06 -04:00
Tom Limoncelli f6c3c99817
Update golang and alpine (#1634)
* Bump alpine from 3.16.0 to 3.16.1

Bumps alpine from 3.16.0 to 3.16.1.

---
updated-dependencies:
- dependency-name: alpine
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

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

* Bump golang from `46f1fa1` to `d84b1ff`

Bumps golang from `46f1fa1` to `d84b1ff`.

---
updated-dependencies:
- dependency-name: golang
  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>
2022-07-20 10:46:45 -04:00
Tom Limoncelli 4d768afc3d
CSCGLOBAL: Support TXT records that are long or include double-quotes (#1631)
* Remove TXT restrictions around length

* Improve get-zones "js" format.

New:

```
$ dnscontrol get-zone --format js providercredkey - stackoverflow.co.il
var DSP_PROVIDERCREDKEY = NewDnsProvider("providercredkey");
var REG_CHANGEME = NewRegistrar("none");
D("stackoverflow.co.il", REG_CHANGEME,
	DnsProvider(DSP_PROVIDERCREDKEY),
	DefaultTTL(14400),
	A('www', '165.160.15.20'),
	...
	...
	...
	...
	//NAMESERVER('dns1.cscdns.net.'),
	//NAMESERVER('dns2.cscdns.net.')
)
```

* Update test data
2022-07-19 17:48:15 -04:00
Tom Limoncelli 35d47d86e7
get-zones "js" format should generate petty DSP variable (#1630)
* Improve get-zones "js" format.

New:

```
$ dnscontrol get-zone --format js providercredkey - stackoverflow.co.il
var DSP_PROVIDERCREDKEY = NewDnsProvider("providercredkey");
var REG_CHANGEME = NewRegistrar("none");
D("stackoverflow.co.il", REG_CHANGEME,
	DnsProvider(DSP_PROVIDERCREDKEY),
	DefaultTTL(14400),
	A('www', '165.160.15.20'),
	...
	...
	...
	...
	//NAMESERVER('dns1.cscdns.net.'),
	//NAMESERVER('dns2.cscdns.net.')
)
```

* Update test data
2022-07-19 11:21:37 -04:00
Tom Limoncelli bcaa6b15cb
AuditRecords should report the provider name (#1628) 2022-07-18 12:59:22 -04:00
Tom Limoncelli 9416140dd0
CHORE: Update Exoscale (#1626)
* CHORE: Update Exoscale

* go mod tidy
2022-07-18 10:45:25 -04:00
Tom Limoncelli c7d3667d87
NAMEDOTCOM: Better estimate TXT length restrictions (#1627) 2022-07-18 10:30:19 -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 9b42764419
Move IGNORE* tests to the end (#1623) 2022-07-14 12:50:10 -04:00
dependabot[bot] f877549ca5
Bump golang from 1.18.3-alpine3.16 to 1.18.4-alpine3.16 (#1618)
Bumps golang from 1.18.3-alpine3.16 to 1.18.4-alpine3.16.

---
updated-dependencies:
- dependency-name: golang
  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>
2022-07-13 12:55:29 -04:00
Tom Limoncelli a0a917266f
MSDNS: Add missing newline to PS warning (#1614) 2022-07-12 14:48:01 -04:00
Amelia Aronsohn b0d80ae498
DNSIMPLE: do not support unpaired double quotes in TXT (#1610)
* DNSIMPLE: do not support unpaired double quotes in TXT

DNSimple supports multiple double-quotes strings in a TXT record, but does not correctly support unpaired or escaped double-quotes currently.

IE the following are valid
```
asdf
"asdf"
"asdf" "asdf"
!@#$ %^&*()([][{}{<></'`:;-_=+\
```

however `as\"df` and `as"df` are not

This removes the extra string processing in getTargetRecordPriority as all tests pass without it and currently only double-quotes cause problems in our TXT validations.

I added another test to prove additional quoting is not needed. We can remove it if undesired.

Also applied small lint changes to make my editor happy.

* Use backticks to prevent escaping

* Set TXT target record content to GetTargetRFC1035Quoted()

Co-authored-by: Tom Limoncelli <tlimoncelli@stackoverflow.com>
2022-07-11 14:52:18 -04:00
Amelia Aronsohn 14ae3732b6
DNSIMPLE: do not support spaces in CAA records. (#1606)
DNSimple does not support spaces in the records at this time. I have opened an internal ticket on the issue.

Fixes test breakage caused in #1377

Co-authored-by: Tom Limoncelli <tlimoncelli@stackoverflow.com>
2022-07-09 01:14:04 -04:00
Amelia Aronsohn 2d7494cea1
Update dnsimple module to 0.71.1 (#1607)
Co-authored-by: Tom Limoncelli <tlimoncelli@stackoverflow.com>
2022-07-09 01:13:16 -04:00
Amelia Aronsohn 72ae22fd54
DNSIMPLE: do not support DS records (#1608)
DNSimple does not support adding your own DS records at this time.

Co-authored-by: Tom Limoncelli <tlimoncelli@stackoverflow.com>
2022-07-09 01:12:46 -04:00
Amelia Aronsohn 642fc13b2d
DNSIMPLE: Change code owner/maintainer (#1609)
Anthony delegates all tasks relating to our DNSControl DNSimple integration to me. It would be more efficient to set me as the code owner.

I am an employee of DNSimple and use DNSControl's DNSimple integration in my other projects as well.

CC @aeden in case he needs to sign off.
2022-07-09 01:12:09 -04:00
Markus Enander 0f04639891
Enable ADC for Gcloud provider (#1583)
Fallback to using Application Default Credentials if no
private_key is available in the creds.json-file.

This allows usage with various short lived credentials, for example
GCE-instances, gcloud auth application-default login, OIDC Workload
Identity etc

Co-authored-by: Tom Limoncelli <tlimoncelli@stackoverflow.com>
2022-07-05 15:53:51 -04:00
Tom Limoncelli 053bd5adf6
Update deps (#1591) 2022-07-05 13:11:52 -04:00
dependabot[bot] 4a8fe4f815
DIGITALOCEAN: Bump github.com/digitalocean/godo from 1.80.0 to 1.81.0 (#1560)
Bumps [github.com/digitalocean/godo](https://github.com/digitalocean/godo) from 1.80.0 to 1.81.0.
- [Release notes](https://github.com/digitalocean/godo/releases)
- [Changelog](https://github.com/digitalocean/godo/blob/main/CHANGELOG.md)
- [Commits](https://github.com/digitalocean/godo/compare/v1.80.0...v1.81.0)

---
updated-dependencies:
- dependency-name: github.com/digitalocean/godo
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

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

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-06-26 20:21:04 -07:00
Kai Schwarz 9b314ac4e7
chore(hexonet): upgrade dependency go-sdk to v3.5.4 (#1580) 2022-06-26 20:17:16 -07:00
Jakob Ackermann 9ea125289b
HETZNER: do not support spaces in CAA records (#1577)
As of 2022-06-23, the Hetzner DNS API is still responding with a 422
 when a CAA record contains a quoted value with spaces.
```
format: number of fields does not match record type, expecting 3
```
Their support acknowledged my bug report a few weeks back and suggested
 the removal of spaces to get past the limitation.
Spaces in CAA records are not common. Let's just skip the test and put
 a notice in the docs.

Signed-off-by: Jakob Ackermann <das7pad@outlook.com>
2022-06-23 19:36:29 -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
Jan-Philipp Benecke e9bf00f581
POWERDNS: Cleanup and fix parsing of TXT records (#1569)
* POWERDNS: Cleanup and fix parsing of TXT records

Signed-off-by: Jan-Philipp Benecke <jan-philipp@bnck.me>

* Add unit tests for convert functions

Signed-off-by: Jan-Philipp Benecke <jan-philipp@bnck.me>
2022-06-20 14:35:13 -04:00
Jan-Philipp Benecke e5de7b5359
MAINT: Restructuring of the PowerDNS DSP based on the layout of CSCGlobal (#1549)
* Restructure PowerDNS DSP based on layout for CSCGlobal

Signed-off-by: Jan-Philipp Benecke <jan-philipp@bnck.me>

* Rename api to dsp and make initializer function private

Signed-off-by: Jan-Philipp Benecke <jan-philipp@bnck.me>

Co-authored-by: Tom Limoncelli <tlimoncelli@stackoverflow.com>
2022-06-20 12:27:05 -04:00
Tom Limoncelli 959f721c04
MAINT: Update TXT docs, suggest not using TxtNoLen255 (#1548)
* suggest not using TxtNoLen255

* Rename functions

* wip!

* fixing!
2022-06-20 11:34:05 -04:00
Tom Limoncelli 691710d39e
MAINT: Upgrade deps (#1561) 2022-06-20 08:29:39 -04:00
Jauder Ho f875bc63e0
MAINT: Configure Dependabot to update Docker image (#1553)
Now that the Dockerfile uses pinned commit hashes for images, it is useful to have Dependabot create pull requests whenever the upstream image is updated.

Co-authored-by: Tom Limoncelli <tlimoncelli@stackoverflow.com>
2022-06-20 07:37:09 -04:00
Tom Limoncelli f5c2028b9e
MAINT: update deps (#1552)
* deps

* deps
2022-06-20 07:35:59 -04:00
Jack Platten 96eb56f140
Add creds.json.tpl file to documentation (#1554)
* Add creds.json.tpl file to documentation

* Add documentation for shell script example.

* Update documentation slightly to clarify

Co-authored-by: Tom Limoncelli <tlimoncelli@stackoverflow.com>
2022-06-20 07:35:32 -04:00
Jan-Philipp Benecke 81d76fb164
Run go fmt after build, so deps are there (#1557)
Signed-off-by: Jan-Philipp Benecke <jan-philipp@bnck.me>
2022-06-20 07:33:25 -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
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
Jan-Philipp Benecke bcb968411a
MAINT: Unify provider outputs to pkg/printer (#1546)
* Unify provider outputs to pkg/printer

Signed-off-by: Jan-Philipp Benecke <jan-philipp@bnck.me>

* No need for custom Errorf

Signed-off-by: Jan-Philipp Benecke <jan-philipp@bnck.me>

* Add missing import for activedir

Signed-off-by: Jan-Philipp Benecke <jan-philipp@bnck.me>

* Add missing fmt import for activedir

Signed-off-by: Jan-Philipp Benecke <jan-philipp@bnck.me>
2022-06-18 09:01:02 -04:00
Jan-Philipp Benecke ba2c7f9c0e
MAINT: Enforcing formatted code (#1544)
* Enforcing formatted code

Signed-off-by: Jan-Philipp Benecke <jan-philipp@bnck.me>

* Show lines

Signed-off-by: Jan-Philipp Benecke <jan-philipp@bnck.me>

* Run check after deps are installed

Signed-off-by: Jan-Philipp Benecke <jan-philipp@bnck.me>
2022-06-18 08:56:04 -04:00
Tom Limoncelli 766f37f60d
MAINT: Put some target-related warnings behind a flag (#1541)
* Cleanup

* wip!
2022-06-17 12:40:44 -04:00
Tom Limoncelli 0623fabc4c
GANDI: Document sharing_id errors (#1542) 2022-06-17 12:11:44 -04:00
Tom Limoncelli cbf5ebd64c
CLOUDFLAREAPI: Fix quoted TXT bug (#1538)
* Cleanup

* add GetTargetQuotedRFC1038

* wip!

* The RFC is 1035
2022-06-16 17:16:29 -04:00
Tom Limoncelli cc0fecf1f7 Revert "CLOUDFLAREAPI: Fix TXT records with quotes"
This reverts commit c3f52d228a.
2022-06-16 15:21:45 -04:00
Tom Limoncelli c3f52d228a CLOUDFLAREAPI: Fix TXT records with quotes 2022-06-16 15:19:44 -04:00
F.D.Castel ffcc77a40a
New Dockerfile (fix #1459) (#1537)
* New Dockerfile from https://github.com/jauderho/dockerfiles/blob/main/dnscontrol/Dockerfile .

* Dockerfile: Removes convertzone. Restores ENTRYPOINT.

* Dockerfile: Adds BUILD_VERSION variable.

* Dockerfile: Pin docker images to specific versions.
2022-06-15 16:17:44 -04:00
Tom Limoncelli 7826c23cfa
CSCGLOBAL: Enable CAA records (#1536)
* Enable CAA

* Another API oddity

* Disable debug output
2022-06-14 07:16:01 -04:00
Tom Limoncelli 752e25471d
NEW PROVIDER: CSCGLOBAL as DNS Service Provider (#1516)
* Move the registrar features to a separate file

* Prepare the testing framework

* Roughed out functions

* Fix up structs

* WIP!

* First tests pass

* wip!

* Flesh out remaining rTypes, get nameservers, etc

* Fix TXT records

* Clean up code

* More cleanups. Fix CAA/SRV

* Linting

* Cleanups/linting

* Fix CAA [more] and more cleanups

* CSC does not like very long txt records

* Use timer only when interactive

* Disable CAA for now

* Update docs

* Remove debug printf

* add go-isatty

* cleanups
2022-06-12 16:01:08 -04:00
Jan-Philipp Benecke 60324bc4f5
CLOUDFLAREAPI: FIX: Preventing segfault when Cloudflare API limit is reached (#1530)
* Preventing segfault when Cloudflare API limit is reached

Signed-off-by: Jan-Philipp Benecke <jan-philipp@bnck.me>

* Add comment for future me

Signed-off-by: Jan-Philipp Benecke <jan-philipp@bnck.me>
2022-06-09 11:26:46 -04:00
Jan-Philipp Benecke 490f1d6184
NEW FEATURE: Add deprecation notice to create-domains command (#1529) 2022-06-08 15:18:26 -04:00
Jan-Philipp Benecke c0450223c2
Create non-existing zones while push or print warning while preview (#1528)
* Create non-existing zones while push. While preview print a warning

Signed-off-by: Jan-Philipp Benecke <jan-philipp.benecke@jpbe.de>

* Ooops, remove testing lines

Signed-off-by: Jan-Philipp Benecke <jan-philipp.benecke@jpbe.de>

* Renaming flag

Signed-off-by: Jan-Philipp Benecke <jan-philipp.benecke@jpbe.de>

* Change flag description

Signed-off-by: Jan-Philipp Benecke <jan-philipp.benecke@jpbe.de>

* Reverse flag logic

Signed-off-by: Jan-Philipp Benecke <jan-philipp@bnck.me>
2022-06-08 14:53:16 -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
Jan-Philipp Benecke cfa104858d
FEATURE: --creds can refer to a command line to execute in addition to a file or script (#1521)
* Allow commands for creds file & refactoring

* Minor fix

* Add shell command ability to docs

Signed-off-by: Jan-Philipp Benecke <jan-philipp.benecke@jpbe.de>

Co-authored-by: Tom Limoncelli <tlimoncelli@stackoverflow.com>
2022-06-06 14:37:45 -04:00
Chris 31a279b82c
MAINT: docker: Add CA certificates to Docker image (#1523)
Co-authored-by: Tom Limoncelli <tlimoncelli@stackoverflow.com>
2022-06-03 10:39:57 -04:00