From 25269ebbc9d8a1be53603cfaf3be0291693aa93c Mon Sep 17 00:00:00 2001 From: Bennet Gallein Date: Mon, 2 Sep 2024 08:12:52 +0200 Subject: [PATCH 1/3] feat(zone/nameservers): automatically make nameserver records canoncial --- src/Resources/Zone.php | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/Resources/Zone.php b/src/Resources/Zone.php index b4adcaf..84b26dc 100644 --- a/src/Resources/Zone.php +++ b/src/Resources/Zone.php @@ -453,7 +453,9 @@ public function setApiRectify(bool $apiRectify): self */ public function setNameservers(array $nameservers): self { - $this->nameservers = $nameservers; + $this->nameservers = array_map(function($ns) { + return rtrim($ns, '.') . '.'; + }, $nameservers); return $this; } From e6c3705912bffed8699af7486abb178611d55e96 Mon Sep 17 00:00:00 2001 From: Bennet Gallein Date: Mon, 2 Sep 2024 08:13:09 +0200 Subject: [PATCH 2/3] fix(test/zone): fix test for automatically set canoncials --- tests/Resources/ZoneTest.php | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/tests/Resources/ZoneTest.php b/tests/Resources/ZoneTest.php index 79c0cfc..888aef1 100644 --- a/tests/Resources/ZoneTest.php +++ b/tests/Resources/ZoneTest.php @@ -65,11 +65,10 @@ public function testSetApiResponseWithoutOptionalData(): void $this->assertNull($zone->getAccount()); } - public function testSetNameservers(): void - { + public function testSetNameserversCanoncial(): void { $zone = new Zone(); - $zone->setNameservers(['foo', 'bar']); - $this->assertSame(['foo', 'bar'], $zone->getNameservers()); + $zone->setNameservers(['ns1', 'ns2']); + $this->assertSame(['ns1.', 'ns2.'], $zone->getNameservers()); } public function testSetKind(): void From 0055a27b3bd595d84a320d20cdb5bc99251a3cf6 Mon Sep 17 00:00:00 2001 From: Bennet Gallein Date: Mon, 2 Sep 2024 08:24:47 +0200 Subject: [PATCH 3/3] feat(zone): simplicy canoncial generation --- src/Powerdns.php | 6 +----- 1 file changed, 1 insertion(+), 5 deletions(-) diff --git a/src/Powerdns.php b/src/Powerdns.php index bb1d585..1e293a7 100644 --- a/src/Powerdns.php +++ b/src/Powerdns.php @@ -148,12 +148,8 @@ public function useKey(string $key): PowerdnsInterface */ public function createZone(string $canonicalDomain, array $nameservers, bool $useDnssec = false): Zone { - $fixDot = substr($canonicalDomain, -1) !== '.'; - - if ($fixDot) { - $canonicalDomain .= '.'; - } + $canonicalDomain = rtrim($canonicalDomain, ".") . "."; $newZone = new ZoneResource(); $newZone->setName($canonicalDomain); $newZone->setNameservers($nameservers);