Skip to content

Commit 345bc11

Browse files
committed
Merge branch 'main' into tlim_cfquotes
2 parents 1ca48e2 + 32f3d3e commit 345bc11

File tree

339 files changed

+11271
-2763
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

339 files changed

+11271
-2763
lines changed

.github/workflows/pr_build.yml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -33,15 +33,15 @@ jobs:
3333
env:
3434
TEST_RESULTS: "/tmp/test-results"
3535
steps:
36-
- uses: actions/checkout@v5
36+
- uses: actions/checkout@v6
3737
with:
3838
fetch-depth: 0
3939
- name: Set up Go
4040
uses: actions/setup-go@v6
4141
with:
4242
go-version: stable
4343
- name: restore_cache
44-
uses: actions/cache@v4.3.0
44+
uses: actions/cache@v5.0.2
4545
with:
4646
key: linux-go-${{ hashFiles('go.sum') }}-${{ env.cache-key }}
4747
restore-keys: linux-go-${{ hashFiles('go.sum') }}-${{ env.cache-key }}
@@ -53,7 +53,7 @@ jobs:
5353
gotestsum --junitfile ${TEST_RESULTS}/gotestsum-report.xml -- $PACKAGE_NAMES
5454
# - name: Enforce Go Formatted Code
5555
# run: "[ `go fmt ./... | wc -l` -eq 0 ]"
56-
- uses: actions/upload-artifact@v4.6.2
56+
- uses: actions/upload-artifact@v6.0.0
5757
with:
5858
name: unit-tests
5959
path: ${{ env.TEST_RESULTS }}

.github/workflows/pr_check_git_status.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ jobs:
1010
check-git-status:
1111
runs-on: ubuntu-latest
1212
steps:
13-
- uses: actions/checkout@v5
13+
- uses: actions/checkout@v6
1414
with:
1515
repository: ${{ github.event.pull_request.head.repo.full_name }}
1616
ref: ${{ github.event.pull_request.head.ref }}

.github/workflows/pr_integration_tests.yml

Lines changed: 11 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -52,7 +52,7 @@ jobs:
5252
Write-Host "Integration test providers: $Providers"
5353
echo "integration_test_providers=$(ConvertTo-Json -InputObject $Providers -Compress)" >> $env:GITHUB_OUTPUT
5454
env:
55-
PROVIDERS: "['AXFRDDNS', 'AXFRDDNS_DNSSEC', 'AZURE_DNS','BIND','BUNNY_DNS','CLOUDFLAREAPI','CLOUDNS','CNR','DIGITALOCEAN','FORTIGATE','GANDI_V5','GCLOUD','HEDNS','HEXONET','HUAWEICLOUD','INWX','JOKER','MYTHICBEASTS', 'NAMEDOTCOM','NS1','POWERDNS','ROUTE53','SAKURACLOUD','TRANSIP']"
55+
PROVIDERS: "['ALIDNS', 'AXFRDDNS', 'AXFRDDNS_DNSSEC', 'AZURE_DNS','BIND','BUNNY_DNS','CLOUDFLAREAPI','CLOUDNS','CNR','DIGITALOCEAN','FORTIGATE','GANDI_V5','GCLOUD','HEDNS','HETZNER_V2','HEXONET','HUAWEICLOUD','INWX','JOKER','MYTHICBEASTS', 'NAMEDOTCOM','NS1','POWERDNS','ROUTE53','SAKURACLOUD','TRANSIP']"
5656
ENV_CONTEXT: ${{ toJson(env) }}
5757
VARS_CONTEXT: ${{ toJson(vars) }}
5858
SECRETS_CONTEXT: ${{ toJson(secrets) }}
@@ -73,6 +73,7 @@ jobs:
7373
# PROVIDER DOMAIN LIST
7474
# These providers will be tested if the env variable is set.
7575
# Set it to the domain name to use during the test.
76+
ALIDNS_DOMAIN: ${{ vars.ALIDNS_DOMAIN }}
7677
AXFRDDNS_DOMAIN: ${{ vars.AXFRDDNS_DOMAIN }}
7778
AXFRDDNS_DNSSEC_DOMAIN: ${{ vars.AXFRDDNS_DNSSEC_DOMAIN }}
7879
AZURE_DNS_DOMAIN: ${{ vars.AZURE_DNS_DOMAIN }}
@@ -87,6 +88,7 @@ jobs:
8788
GANDI_V5_DOMAIN: ${{ vars.GANDI_V5_DOMAIN }}
8889
GCLOUD_DOMAIN: ${{ vars.GCLOUD_DOMAIN }}
8990
HEDNS_DOMAIN: ${{ vars.HEDNS_DOMAIN }}
91+
HETZNER_V2_DOMAIN: ${{ vars.HETZNER_V2_DOMAIN }}
9092
HEXONET_DOMAIN: ${{ vars.HEXONET_DOMAIN }}
9193
HUAWEICLOUD_DOMAIN: ${{ vars.HUAWEICLOUD_DOMAIN }}
9294
JOKER_DOMAIN: ${{ vars.JOKER_DOMAIN }}
@@ -102,6 +104,9 @@ jobs:
102104
# The above providers have additional env variables they
103105
# need for credentials and such.
104106
#
107+
ALIDNS_ACCESS_KEY_ID: ${{ secrets.ALIDNS_ACCESS_KEY_ID }}
108+
ALIDNS_ACCESS_KEY_SECRET: ${{ secrets.ALIDNS_ACCESS_KEY_SECRET }}
109+
#
105110
AXFRDDNS_MASTER: ${{ secrets.AXFRDDNS_MASTER }}
106111
AXFRDDNS_NAMESERVERS: ${{ secrets.AXFRDDNS_NAMESERVERS }}
107112
AXFRDDNS_TRANSFER_KEY: ${{ secrets.AXFRDDNS_TRANSFER_KEY }}
@@ -154,6 +159,8 @@ jobs:
154159
HEDNS_TOTP_SECRET: ${{ secrets.HEDNS_TOTP_SECRET }}
155160
HEDNS_USERNAME: ${{ secrets.HEDNS_USERNAME }}
156161
#
162+
HETZNER_V2_API_TOKEN: ${{ secrets.HETZNER_V2_API_TOKEN }}
163+
#
157164
HEXONET_ENTITY: ${{ secrets.HEXONET_ENTITY }}
158165
HEXONET_PW: ${{ secrets.HEXONET_PW }}
159166
HEXONET_UID: ${{ secrets.HEXONET_UID }}
@@ -194,10 +201,10 @@ jobs:
194201
matrix:
195202
provider: ${{ fromJson(needs.integration-test-providers.outputs.integration_test_providers )}}
196203
steps:
197-
- uses: actions/checkout@v5
204+
- uses: actions/checkout@v6
198205
- run: mkdir -p "$TEST_RESULTS"
199206
- name: restore_cache
200-
uses: actions/cache@v4.3.0
207+
uses: actions/cache@v5.0.2
201208
with:
202209
key: linux-go-${{ hashFiles('go.sum') }}-${{ env.cache-key }}
203210
restore-keys: linux-go-${{ hashFiles('go.sum') }}-${{ env.cache-key }}
@@ -211,7 +218,7 @@ jobs:
211218
echo "Skip test for ${{ matrix.provider }} provider"
212219
fi
213220
working-directory: integrationTest
214-
- uses: actions/upload-artifact@v4.6.2
221+
- uses: actions/upload-artifact@v6.0.0
215222
with:
216223
name: integration-tests-${{ matrix.provider }}
217224
path: ${{ env.TEST_RESULTS }}

.github/workflows/release_draft.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@ jobs:
2020
uses: docker/setup-qemu-action@v3
2121

2222
- name: Checkout repo
23-
uses: actions/checkout@v5
23+
uses: actions/checkout@v6
2424
with:
2525
fetch-depth: 0
2626
# Why "fetch-depth: 0"? To generate the release notes, we need the

.gitignore

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -33,5 +33,8 @@ types-dnscontrol.d.ts
3333
dist/
3434
node_modules/
3535

36+
// Golang
37+
__debug_bin*
38+
3639
// Test artifact:
3740
*.ACTUAL

.golangci.yml

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
linters:
2+
disable:
3+
- errcheck

.goreleaser.yml

Lines changed: 15 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -39,7 +39,7 @@ changelog:
3939
regexp: "(?i)^.*(major|new provider|feature)[(\\w)]*:+.*$"
4040
order: 1
4141
- title: 'Provider-specific changes:'
42-
regexp: "(?i)((adguardhome|akamaiedge|autodns|axfrd|azure|azure_private_dns|bind|bunnydns|cloudflare|cloudflareapi_old|cloudns|cnr|cscglobal|desec|digitalocean|dnsimple|dnsmadeeasy|doh|domainnameshop|dynadot|easyname|exoscale|fortigate|gandi|gcloud|gcore|hedns|hetzner|hexonet|hostingde|huaweicloud|inwx|joker|linode|loopia|luadns|mythicbeasts|namecheap|namedotcom|netcup|netlify|ns1|opensrs|oracle|ovh|packetframe|porkbun|powerdns|realtimeregister|route53|rwth|sakuracloud|softlayer|transip|vultr).*:)+.*"
42+
regexp: "(?i)((adguardhome|akamaiedge|autodns|axfrd|azure|azure_private_dns|alidns|bind|bunnydns|cloudflare|cloudflareapi_old|cloudns|cnr|cscglobal|desec|digitalocean|dnsimple|dnsmadeeasy|doh|domainnameshop|dynadot|easyname|exoscale|fortigate|gandi|gcloud|gcore|hedns|hetzner|hetznerv2|hexonet|hostingde|huaweicloud|inwx|joker|linode|loopia|luadns|mythicbeasts|namecheap|namedotcom|netcup|netlify|ns1|opensrs|oracle|ovh|packetframe|porkbun|powerdns|realtimeregister|route53|rwth|sakuracloud|softlayer|transip|vercel|vultr).*:)+.*"
4343
order: 2
4444
- title: 'Documentation:'
4545
regexp: "(?i)^.*(docs)[(\\w)]*:+.*$"
@@ -157,12 +157,25 @@ release:
157157
draft: true
158158
prerelease: auto
159159
mode: append
160+
header: |
161+
Greetings DNS fans!
162+
163+
Thanks to all contributors involved in this release! This is a community project and we couldn't do it without all of your contributions!
164+
165+
Sincerely,
166+
--Tom Limoncelli
167+
168+
## Monthly video call!
169+
170+
Everyone is invited to the __Monthly DNSControl Community Video Conference Call__ on the 2nd Tuesday of each month. Join whether you are a new user with questions or an experienced developer that wants to discuss DNSControl internals... or anything in between! Meeting details on
171+
[GitHub Discussions](https://github.com/StackExchange/dnscontrol/discussions?discussions_q=label%3AAnnouncement%3Afuture_vc).
172+
160173
footer: |
161174
## Deprecation warnings
162175
163176
> [!WARNING]
164177
> - **REV() will switch from RFC2317 to RFC4183 in v5.0.** This is a breaking change. Warnings are output if your configuration is affected. No date has been announced for v5.0. See https://docs.dnscontrol.org/language-reference/top-level-functions/revcompat
165-
> - **NAMEDOTCOM and SOFTLAYER need maintainers!** These providers have no maintainer. Maintainers respond to PRs and fix bugs in a timely manner, and try to stay on top of protocol changes.
178+
> - **NAMEDOTCOM, OPENSRS and SOFTLAYER need maintainers!** These providers have no maintainer. Maintainers respond to PRs and fix bugs in a timely manner, and try to stay on top of protocol changes.
166179
167180
## Install
168181

Dockerfile

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
# syntax = docker/dockerfile:1.4
22

3-
FROM alpine:3.22.1@sha256:4bcff63911fcb4448bd4fdacec207030997caf25e9bea4045fa6c8c44de311d1 as RUN
3+
FROM alpine:3.23.2@sha256:865b95f46d98cf867a156fe4a135ad3fe50d2056aa3f25ed31662dff6da4eb62 as RUN
44

55
# Add runtime dependencies
66
# - tzdata: Go time required external dependency eg: TRANSIP and possibly others

OWNERS

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
providers/adguardhome @ishanjain28
22
providers/akamaiedgedns @edglynes
3+
providers/alidns @bytemain
34
providers/autodns @arnoschoon
45
providers/axfrddns @hnrgrgr
56
providers/azuredns @vatsalyagoel
@@ -11,7 +12,8 @@ providers/cloudns @pragmaton
1112
providers/cnr @KaiSchwarz-cnic
1213
providers/cscglobal @mikenz
1314
providers/desec @D3luxee
14-
providers/digitalocean @Deraen
15+
providers/digitalocean @chicks-net
16+
providers/dnscale @dnscale-ops
1517
providers/dnsimple @onlyhavecans
1618
providers/dnsmadeeasy @vojtad
1719
providers/doh @mikenz
@@ -25,6 +27,7 @@ providers/gcloud @riyadhalnur
2527
providers/gcore @xddxdd
2628
providers/hedns @rblenkinsopp
2729
providers/hetzner @das7pad
30+
providers/hetznerv2 @das7pad
2831
providers/hexonet @KaiSchwarz-cnic
2932
providers/hostingde @juliusrickert
3033
providers/huaweicloud @huihuimoe
@@ -40,7 +43,7 @@ providers/namecheap @willpower232
4043
providers/netcup @kordianbruck
4144
providers/netlify @SphericalKat
4245
providers/ns1 @costasd
43-
providers/opensrs @philhug
46+
# providers/opensrs NEEDS VOLUNTEER
4447
providers/oracle @kallsyms
4548
providers/ovh @masterzen
4649
providers/packetframe @hamptonmoore
@@ -52,4 +55,5 @@ providers/rwth @mistererwin
5255
providers/sakuracloud @ttkzw
5356
# providers/softlayer NEEDS VOLUNTEER
5457
providers/transip @blackshadev
58+
providers/vercel @SukkaW
5559
providers/vultr @pgaskin

README.md

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,7 @@ Currently supported DNS providers:
1717

1818
- AdGuard Home
1919
- Akamai Edge DNS
20+
- Alibaba Cloud DNS (ALIDNS)
2021
- AutoDNS
2122
- AWS Route 53
2223
- AXFR+DDNS
@@ -31,6 +32,7 @@ Currently supported DNS providers:
3132
- deSEC
3233
- DigitalOcean
3334
- DNS Made Easy
35+
- DNScale
3436
- DNSimple
3537
- Domainnameshop (Domeneshop)
3638
- Exoscale
@@ -65,6 +67,7 @@ Currently supported DNS providers:
6567
- Sakura Cloud
6668
- SoftLayer
6769
- TransIP
70+
- Vercel
6871
- Vultr
6972

7073
Currently supported Domain Registrars:
@@ -168,10 +171,10 @@ DNSControl can be installed via packages for macOS, Linux and Windows, or from s
168171

169172
See [dnscontrol-action](https://github.com/koenrh/dnscontrol-action) or [gacts/install-dnscontrol](https://github.com/gacts/install-dnscontrol).
170173

171-
## Deprecation warnings (updated 2024-03-25)
174+
## Deprecation warnings (updated 2025-11-21)
172175

173176
- **REV() will switch from RFC2317 to RFC4183 in v5.0.** This is a breaking change. Warnings are output if your configuration is affected. No date has been announced for v5.0. See https://docs.dnscontrol.org/language-reference/top-level-functions/revcompat
174-
- **NAMEDOTCOM and SOFTLAYER need maintainers!** These providers have no maintainer. Maintainers respond to PRs and fix bugs in a timely manner, and try to stay on top of protocol changes.
177+
- **NAMEDOTCOM, OPENSRS, and SOFTLAYER need maintainers!** These providers have no maintainer. Maintainers respond to PRs and fix bugs in a timely manner, and try to stay on top of protocol changes. Interested in being a hero and adopting them? Contact tlimoncelli at stack overflow dot com.
175178

176179
## More info at our website
177180

0 commit comments

Comments
 (0)