mirror of
https://github.com/foxcpp/maddy.git
synced 2025-04-01 20:27:36 +03:00
Add support for GCore DNS
This commit is contained in:
parent
21485e99d2
commit
b4e8716bba
4 changed files with 45 additions and 1 deletions
2
.gitignore
vendored
2
.gitignore
vendored
|
@ -16,6 +16,8 @@ _testmain.go
|
|||
*.exe~
|
||||
*.test
|
||||
*.prof
|
||||
**/.envrc
|
||||
**/.DS_Store
|
||||
|
||||
# Tests coverage
|
||||
*.out
|
||||
|
|
6
go.mod
6
go.mod
|
@ -1,6 +1,8 @@
|
|||
module github.com/foxcpp/maddy
|
||||
|
||||
go 1.23
|
||||
go 1.23.1
|
||||
|
||||
toolchain go1.23.5
|
||||
|
||||
require (
|
||||
blitiri.com.ar/go/spf v1.5.1
|
||||
|
@ -34,6 +36,7 @@ require (
|
|||
github.com/libdns/cloudflare v0.1.1
|
||||
github.com/libdns/digitalocean v0.0.0-20230728223659-4f9064657aea
|
||||
github.com/libdns/gandi v1.0.3
|
||||
github.com/libdns/gcore v0.0.0-20250127070537-4a9d185c9d20
|
||||
github.com/libdns/googleclouddns v1.1.0
|
||||
github.com/libdns/hetzner v0.0.1
|
||||
github.com/libdns/leaseweb v0.4.0
|
||||
|
@ -64,6 +67,7 @@ require (
|
|||
cloud.google.com/go/compute/metadata v0.6.0 // indirect
|
||||
filippo.io/edwards25519 v1.1.0 // indirect
|
||||
github.com/Azure/go-ntlmssp v0.0.0-20221128193559-754e69321358 // indirect
|
||||
github.com/G-Core/gcore-dns-sdk-go v0.2.9 // indirect
|
||||
github.com/aws/aws-sdk-go v1.44.40 // indirect
|
||||
github.com/aws/aws-sdk-go-v2 v1.33.0 // indirect
|
||||
github.com/aws/aws-sdk-go-v2/config v1.29.1 // indirect
|
||||
|
|
4
go.sum
4
go.sum
|
@ -190,6 +190,8 @@ github.com/Azure/go-ntlmssp v0.0.0-20221128193559-754e69321358/go.mod h1:chxPXzS
|
|||
github.com/BurntSushi/toml v0.3.1/go.mod h1:xHWCNGjB5oqiDr8zfno3MHue2Ht5sIBksp03qcyfWMU=
|
||||
github.com/BurntSushi/toml v1.3.2/go.mod h1:CxXYINrC8qIiEnFrOxCa7Jy5BFHlXnUU2pbicEuybxQ=
|
||||
github.com/BurntSushi/xgb v0.0.0-20160522181843-27f122750802/go.mod h1:IVnqGOEym/WlBOVXweHU+Q+/VP0lqqI8lqeDx9IjBqo=
|
||||
github.com/G-Core/gcore-dns-sdk-go v0.2.9 h1:LMMZIRX8y3aJJuAviNSpFmLbovZUw+6Om+8VElp1F90=
|
||||
github.com/G-Core/gcore-dns-sdk-go v0.2.9/go.mod h1:35t795gOfzfVanhzkFyUXEzaBuMXwETmJldPpP28MN4=
|
||||
github.com/GehirnInc/crypt v0.0.0-20230320061759-8cc1b52080c5 h1:IEjq88XO4PuBDcvmjQJcQGg+w+UaafSy8G5Kcb5tBhI=
|
||||
github.com/GehirnInc/crypt v0.0.0-20230320061759-8cc1b52080c5/go.mod h1:exZ0C/1emQJAw5tHOaUDyY1ycttqBAPcxuzf7QbY6ec=
|
||||
github.com/OneOfOne/xxhash v1.2.2/go.mod h1:HSdplMjZKSmBqAxg5vPj2TmRDmfkzw+cTzAElWljhcU=
|
||||
|
@ -521,6 +523,8 @@ github.com/libdns/cloudflare v0.1.1 h1:FVPfWwP8zZCqj268LZjmkDleXlHPlFU9KC4OJ3yn0
|
|||
github.com/libdns/cloudflare v0.1.1/go.mod h1:9VK91idpOjg6v7/WbjkEW49bSCxj00ALesIFDhJ8PBU=
|
||||
github.com/libdns/digitalocean v0.0.0-20230728223659-4f9064657aea h1:IGlMNZCUp8Ho7NYYorpP5ZJgg2mFXARs6eHs/pSqFkA=
|
||||
github.com/libdns/digitalocean v0.0.0-20230728223659-4f9064657aea/go.mod h1:B2TChhOTxvBflpRTHlguXWtwa1Ha5WI6JkB6aCViM+0=
|
||||
github.com/libdns/gcore v0.0.0-20250127070537-4a9d185c9d20 h1:bQwFw+C9sX/zYZlV53ey0KnNkxrfWYIFpvptuAVhJ1Y=
|
||||
github.com/libdns/gcore v0.0.0-20250127070537-4a9d185c9d20/go.mod h1:JGoT1mbmqQwtYQqN5F/vGc9j4TTTMKw/hDm5vXADHUI=
|
||||
github.com/libdns/googleclouddns v1.1.0 h1:murPR1LfTZZObLV2OLxUVmymWH25glkMFKpDjkk2m0E=
|
||||
github.com/libdns/googleclouddns v1.1.0/go.mod h1:3tzd056dfqKlf71V8Oy19En4WjJ3ybyuWx6P9bQSCIw=
|
||||
github.com/libdns/hetzner v0.0.1 h1:WsmcsOKnfpKmzwhfyqhGQEIlEeEaEUvb7ezoJgBKaqU=
|
||||
|
|
34
internal/libdns/gcore.go
Normal file
34
internal/libdns/gcore.go
Normal file
|
@ -0,0 +1,34 @@
|
|||
//go:build libdns_gcore || !libdns_separate
|
||||
// +build libdns_gcore !libdns_separate
|
||||
|
||||
package libdns
|
||||
|
||||
import (
|
||||
"fmt"
|
||||
|
||||
"github.com/foxcpp/maddy/framework/config"
|
||||
"github.com/foxcpp/maddy/framework/module"
|
||||
"github.com/libdns/gcore"
|
||||
)
|
||||
|
||||
func init() {
|
||||
module.Register("libdns.gcore", func(modName, instName string, _, _ []string) (module.Module, error) {
|
||||
p := gcore.Provider{}
|
||||
return &ProviderModule{
|
||||
RecordDeleter: &p,
|
||||
RecordAppender: &p,
|
||||
setConfig: func(c *config.Map) {
|
||||
c.String("api_key", false, false, "", &p.APIKey)
|
||||
},
|
||||
afterConfig: func() error {
|
||||
if p.APIKey == "" {
|
||||
return fmt.Errorf("libdns.gcore: api_key should be specified")
|
||||
}
|
||||
return nil
|
||||
},
|
||||
|
||||
instName: instName,
|
||||
modName: modName,
|
||||
}, nil
|
||||
})
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue