Skip to content

Commit

Permalink
alidns: Merge pull request #2 from francislavoie/replacer-in-provision
Browse files Browse the repository at this point in the history
alidns: Move replacer to Provisioning phase
  • Loading branch information
viscropst committed Jan 12, 2021
2 parents f4c655e + 83a7b5e commit a782351
Show file tree
Hide file tree
Showing 3 changed files with 190 additions and 16 deletions.
21 changes: 16 additions & 5 deletions alidns.go
Original file line number Diff line number Diff line change
Expand Up @@ -21,6 +21,15 @@ func (Provider) CaddyModule() caddy.ModuleInfo {
}
}

// Before using the provider config, resolve placeholders in the API token.
// Implements caddy.Provisioner.
func (p *Provider) Provision(ctx caddy.Context) error {
repl := caddy.NewReplacer()
p.Provider.AccKeyID = repl.ReplaceAll(p.Provider.AccKeyID, "")
p.Provider.AccKeySecret = repl.ReplaceAll(p.Provider.AccKeySecret, "")
return nil
}

// UnmarshalCaddyfile sets up the DNS provider from Caddyfile tokens. Syntax:
//
// alidns {
Expand All @@ -29,7 +38,6 @@ func (Provider) CaddyModule() caddy.ModuleInfo {
// }
//
func (p *Provider) UnmarshalCaddyfile(d *caddyfile.Dispenser) error {
repl := caddy.NewReplacer()
for d.Next() {
if d.NextArg() {
return d.ArgErr()
Expand All @@ -38,14 +46,14 @@ func (p *Provider) UnmarshalCaddyfile(d *caddyfile.Dispenser) error {
switch d.Val() {
case "access_key_id":
if d.NextArg() {
p.Provider.AccKeyID = repl.ReplaceAll(d.Val(), "")
p.Provider.AccKeyID = d.Val()
}
if d.NextArg() {
return d.ArgErr()
}
case "access_key_secret":
if d.NextArg() {
p.Provider.AccKeySecret = repl.ReplaceAll(d.Val(), "")
p.Provider.AccKeySecret = d.Val()
}
if d.NextArg() {
return d.ArgErr()
Expand All @@ -61,5 +69,8 @@ func (p *Provider) UnmarshalCaddyfile(d *caddyfile.Dispenser) error {
return nil
}

// Interface guard
var _ caddyfile.Unmarshaler = (*Provider)(nil)
// Interface guards
var (
_ caddyfile.Unmarshaler = (*Provider)(nil)
_ caddy.Provisioner = (*Provider)(nil)
)
2 changes: 1 addition & 1 deletion go.mod
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,6 @@ module github.com/caddy-dns/alidns
go 1.14

require (
github.com/caddyserver/caddy/v2 v2.2.2
github.com/caddyserver/caddy/v2 v2.3.0
github.com/libdns/alidns v1.0.1
)

0 comments on commit a782351

Please sign in to comment.