ddns: store configuation in database (#435)

* ddns: store configuation in database

Co-authored-by: nap0o <144927971+nap0o@users.noreply.github.com>

* feat: split domain with soa lookup

* switch to libdns interface

* ddns: add unit test

* ddns: skip TestSplitDomainSOA on ci

network is not steady

* fix error handling

* fix error handling

---------

Co-authored-by: nap0o <144927971+nap0o@users.noreply.github.com>
This commit is contained in:
UUBulb
2024-10-17 21:03:03 +08:00
committed by GitHub
parent 0b7f43b149
commit a503f0cf40
38 changed files with 1252 additions and 827 deletions

View File

@@ -622,20 +622,59 @@ other = "Network"
[EnableShowInService]
other = "Enable Show in Service"
[DDNS]
other = "Dynamic DNS"
[DDNSProfiles]
other = "DDNS Profiles"
[AddDDNSProfile]
other = "New Profile"
[EnableDDNS]
other = "Enable DDNS"
[EnableIPv4]
other = "Enable DDNS IPv4"
other = "IPv4 Enabled"
[EnableIpv6]
other = "Enable DDNS IPv6"
[EnableIPv6]
other = "IPv6 Enabled"
[DDNSDomain]
other = "DDNS Domain"
other = "Domains"
[DDNSProfile]
other = "DDNS Profile Name"
[DDNSDomains]
other = "Domains (separate with comma)"
[DDNSProvider]
other = "DDNS Provider"
[MaxRetries]
other = "Maximum retry attempts"
[DDNSAccessID]
other = "Credential 1"
[DDNSAccessSecret]
other = "Credential 2"
[DDNSTokenID]
other = "Token ID"
[DDNSTokenSecret]
other = "Token Secret"
[WebhookURL]
other = "Webhook URL"
[WebhookMethod]
other = "Webhook Request Method"
[WebhookHeaders]
other = "Webhook Request Headers"
[WebhookRequestBody]
other = "Webhook Request Body"
[Feature]
other = "Feature"

View File

@@ -622,20 +622,59 @@ other = "Red"
[EnableShowInService]
other = "Mostrar en servicio"
[DDNS]
other = "DNS Dinámico"
[DDNSProfiles]
other = "Perfiles DDNS"
[AddDDNSProfile]
other = "Nuevo Perfil"
[EnableDDNS]
other = "Habilitar DDNS"
[EnableIPv4]
other = "Habilitar DDNS IPv4"
other = "IPv4 Activado"
[EnableIpv6]
other = "Habilitar DDNS IPv6"
[EnableIPv6]
other = "IPv6 Activado"
[DDNSDomain]
other = "Dominio DDNS"
other = "Dominios"
[DDNSProfile]
other = "Nombre del perfil de DDNS"
[DDNSDomains]
other = "Dominios (separados por comas)"
[DDNSProvider]
other = "Proveedor DDNS"
[MaxRetries]
other = "Número máximo de intentos de reintento"
[DDNSAccessID]
other = "Credencial 1"
[DDNSAccessSecret]
other = "Credencial 2"
[DDNSTokenID]
other = "ID del Token"
[DDNSTokenSecret]
other = "Secreto del Token"
[WebhookURL]
other = "URL del Webhook"
[WebhookMethod]
other = "Método de Solicitud del Webhook"
[WebhookHeaders]
other = "Encabezados de Solicitud del Webhook"
[WebhookRequestBody]
other = "Cuerpo de Solicitud del Webhook"
[Feature]
other = "Característica"

View File

@@ -622,20 +622,59 @@ other = "网络"
[EnableShowInService]
other = "在服务中显示"
[DDNS]
other = "动态 DNS"
[DDNSProfiles]
other = "DDNS配置"
[AddDDNSProfile]
other = "新配置"
[EnableDDNS]
other = "启用DDNS"
[EnableIPv4]
other = "启用DDNS IPv4"
[EnableIpv6]
[EnableIPv6]
other = "启用DDNS IPv6"
[DDNSDomain]
other = "DDNS域名"
[DDNSProfile]
other = "DDNS配置名"
[DDNSDomains]
other = "域名(逗号分隔)"
[DDNSProvider]
other = "DDNS供应商"
[MaxRetries]
other = "最大重试次数"
[DDNSAccessID]
other = "DDNS 凭据 1"
[DDNSAccessSecret]
other = "DDNS 凭据 2"
[DDNSTokenID]
other = "令牌 ID"
[DDNSTokenSecret]
other = "令牌 Secret"
[WebhookURL]
other = "Webhook 地址"
[WebhookMethod]
other = "Webhook 请求方式"
[WebhookHeaders]
other = "Webhook 请求头"
[WebhookRequestBody]
other = "Webhook 请求体"
[Feature]
other = "功能"

View File

@@ -622,20 +622,59 @@ other = "網路"
[EnableShowInService]
other = "在服務中顯示"
[DDNS]
other = "動態 DNS"
[DDNSProfiles]
other = "DDNS配置"
[AddDDNSProfile]
other = "新增配置"
[EnableDDNS]
other = "啟用DDNS"
[EnableIPv4]
other = "啟用DDNS IPv4"
[EnableIpv6]
[EnableIPv6]
other = "啟用DDNS IPv6"
[DDNSDomain]
other = "DDNS域"
other = "DDNS域"
[DDNSProfile]
other = "DDNS設定名"
[DDNSDomains]
other = "域名(逗號分隔)"
[DDNSProvider]
other = "DDNS供應商"
[MaxRetries]
other = "最大重試次數"
[DDNSAccessID]
other = "DDNS憑據1"
[DDNSAccessSecret]
other = "DDNS憑據2"
[DDNSTokenID]
other = "令牌ID"
[DDNSTokenSecret]
other = "令牌Secret"
[WebhookURL]
other = "Webhook地址"
[WebhookMethod]
other = "Webhook請求方式"
[WebhookHeaders]
other = "Webhook請求頭"
[WebhookRequestBody]
other = "Webhook請求體"
[Feature]
other = "功能"