mirror of
https://github.com/kubernetes-sigs/external-dns.git
synced 2025-08-07 01:56:57 +02:00
Refactoring after review
* Updated TTL variable type to int64 * Updated rfc2136 contructor to have nil as last variable * Removed unnecessary variable `data`
This commit is contained in:
parent
c0c733b4bf
commit
b6111b9768
2
main.go
2
main.go
@ -240,7 +240,7 @@ func main() {
|
|||||||
p, err = provider.NewOCIProvider(*config, domainFilter, zoneIDFilter, cfg.DryRun)
|
p, err = provider.NewOCIProvider(*config, domainFilter, zoneIDFilter, cfg.DryRun)
|
||||||
}
|
}
|
||||||
case "rfc2136":
|
case "rfc2136":
|
||||||
p, err = provider.NewRfc2136Provider(cfg.RFC2136Host, cfg.RFC2136Port, cfg.RFC2136Zone, cfg.RFC2136Insecure, cfg.RFC2136TSIGKeyName, cfg.RFC2136TSIGSecret, cfg.RFC2136TSIGSecretAlg, cfg.RFC2136TAXFR, domainFilter, cfg.DryRun, nil, cfg.RFC2136MinTTLSeconds)
|
p, err = provider.NewRfc2136Provider(cfg.RFC2136Host, cfg.RFC2136Port, cfg.RFC2136Zone, cfg.RFC2136Insecure, cfg.RFC2136TSIGKeyName, cfg.RFC2136TSIGSecret, cfg.RFC2136TSIGSecretAlg, cfg.RFC2136TAXFR, domainFilter, cfg.DryRun, cfg.RFC2136MinTTLSeconds, nil)
|
||||||
case "ns1":
|
case "ns1":
|
||||||
p, err = provider.NewNS1Provider(
|
p, err = provider.NewNS1Provider(
|
||||||
provider.NS1Config{
|
provider.NS1Config{
|
||||||
|
@ -130,7 +130,7 @@ type Config struct {
|
|||||||
RFC2136TSIGSecret string `secure:"yes"`
|
RFC2136TSIGSecret string `secure:"yes"`
|
||||||
RFC2136TSIGSecretAlg string
|
RFC2136TSIGSecretAlg string
|
||||||
RFC2136TAXFR bool
|
RFC2136TAXFR bool
|
||||||
RFC2136MinTTLSeconds int
|
RFC2136MinTTLSeconds int64
|
||||||
NS1Endpoint string
|
NS1Endpoint string
|
||||||
NS1IgnoreSSL bool
|
NS1IgnoreSSL bool
|
||||||
TransIPAccountName string
|
TransIPAccountName string
|
||||||
@ -368,7 +368,7 @@ func (cfg *Config) ParseFlags(args []string) error {
|
|||||||
app.Flag("rfc2136-tsig-secret", "When using the RFC2136 provider, specify the TSIG (base64) value to attached to DNS messages (required when --rfc2136-insecure=false)").Default(defaultConfig.RFC2136TSIGSecret).StringVar(&cfg.RFC2136TSIGSecret)
|
app.Flag("rfc2136-tsig-secret", "When using the RFC2136 provider, specify the TSIG (base64) value to attached to DNS messages (required when --rfc2136-insecure=false)").Default(defaultConfig.RFC2136TSIGSecret).StringVar(&cfg.RFC2136TSIGSecret)
|
||||||
app.Flag("rfc2136-tsig-secret-alg", "When using the RFC2136 provider, specify the TSIG (base64) value to attached to DNS messages (required when --rfc2136-insecure=false)").Default(defaultConfig.RFC2136TSIGSecretAlg).StringVar(&cfg.RFC2136TSIGSecretAlg)
|
app.Flag("rfc2136-tsig-secret-alg", "When using the RFC2136 provider, specify the TSIG (base64) value to attached to DNS messages (required when --rfc2136-insecure=false)").Default(defaultConfig.RFC2136TSIGSecretAlg).StringVar(&cfg.RFC2136TSIGSecretAlg)
|
||||||
app.Flag("rfc2136-tsig-axfr", "When using the RFC2136 provider, specify the TSIG (base64) value to attached to DNS messages (required when --rfc2136-insecure=false)").BoolVar(&cfg.RFC2136TAXFR)
|
app.Flag("rfc2136-tsig-axfr", "When using the RFC2136 provider, specify the TSIG (base64) value to attached to DNS messages (required when --rfc2136-insecure=false)").BoolVar(&cfg.RFC2136TAXFR)
|
||||||
app.Flag("rfc2136-min-ttl", "When using the RFC2136 provider, specify minimal TTL (in seconds) for records. This value will be used if the provided TTL for a service/ingress is lower than this").Default(strconv.Itoa(defaultConfig.RFC2136MinTTLSeconds)).IntVar(&cfg.RFC2136MinTTLSeconds)
|
app.Flag("rfc2136-min-ttl", "When using the RFC2136 provider, specify minimal TTL (in seconds) for records. This value will be used if the provided TTL for a service/ingress is lower than this").Default(strconv.FormatInt(defaultConfig.RFC2136MinTTLSeconds, 10)).Int64Var(&cfg.RFC2136MinTTLSeconds)
|
||||||
|
|
||||||
// Flags related to TransIP provider
|
// Flags related to TransIP provider
|
||||||
app.Flag("transip-account", "When using the TransIP provider, specify the account name (required when --provider=transip)").Default(defaultConfig.TransIPAccountName).StringVar(&cfg.TransIPAccountName)
|
app.Flag("transip-account", "When using the TransIP provider, specify the account name (required when --provider=transip)").Default(defaultConfig.TransIPAccountName).StringVar(&cfg.TransIPAccountName)
|
||||||
|
@ -41,7 +41,7 @@ type rfc2136Provider struct {
|
|||||||
tsigSecretAlg string
|
tsigSecretAlg string
|
||||||
insecure bool
|
insecure bool
|
||||||
axfr bool
|
axfr bool
|
||||||
minTTLSeconds int
|
minTTLSeconds int64
|
||||||
|
|
||||||
// only consider hosted zones managing domains ending in this suffix
|
// only consider hosted zones managing domains ending in this suffix
|
||||||
domainFilter DomainFilter
|
domainFilter DomainFilter
|
||||||
@ -65,7 +65,7 @@ type rfc2136Actions interface {
|
|||||||
}
|
}
|
||||||
|
|
||||||
// NewRfc2136Provider is a factory function for OpenStack rfc2136 providers
|
// NewRfc2136Provider is a factory function for OpenStack rfc2136 providers
|
||||||
func NewRfc2136Provider(host string, port int, zoneName string, insecure bool, keyName string, secret string, secretAlg string, axfr bool, domainFilter DomainFilter, dryRun bool, actions rfc2136Actions, minTTLSeconds int) (Provider, error) {
|
func NewRfc2136Provider(host string, port int, zoneName string, insecure bool, keyName string, secret string, secretAlg string, axfr bool, domainFilter DomainFilter, dryRun bool, minTTLSeconds int64, actions rfc2136Actions) (Provider, error) {
|
||||||
secretAlgChecked, ok := tsigAlgs[secretAlg]
|
secretAlgChecked, ok := tsigAlgs[secretAlg]
|
||||||
if !ok && !insecure {
|
if !ok && !insecure {
|
||||||
return nil, errors.Errorf("%s is not supported TSIG algorithm", secretAlg)
|
return nil, errors.Errorf("%s is not supported TSIG algorithm", secretAlg)
|
||||||
@ -256,7 +256,7 @@ func (r rfc2136Provider) UpdateRecord(m *dns.Msg, ep *endpoint.Endpoint) error {
|
|||||||
func (r rfc2136Provider) AddRecord(m *dns.Msg, ep *endpoint.Endpoint) error {
|
func (r rfc2136Provider) AddRecord(m *dns.Msg, ep *endpoint.Endpoint) error {
|
||||||
log.Debugf("AddRecord.ep=%s", ep)
|
log.Debugf("AddRecord.ep=%s", ep)
|
||||||
|
|
||||||
var ttl = int64(r.minTTLSeconds)
|
var ttl = r.minTTLSeconds
|
||||||
if ep.RecordTTL.IsConfigured() && int64(ep.RecordTTL) > ttl {
|
if ep.RecordTTL.IsConfigured() && int64(ep.RecordTTL) > ttl {
|
||||||
ttl = int64(ep.RecordTTL)
|
ttl = int64(ep.RecordTTL)
|
||||||
}
|
}
|
||||||
|
@ -93,14 +93,13 @@ func (r *rfc2136Stub) IncomeTransfer(m *dns.Msg, a string) (env chan *dns.Envelo
|
|||||||
}
|
}
|
||||||
|
|
||||||
func createRfc2136StubProvider(stub *rfc2136Stub) (Provider, error) {
|
func createRfc2136StubProvider(stub *rfc2136Stub) (Provider, error) {
|
||||||
return NewRfc2136Provider("", 0, "", false, "key", "secret", "hmac-sha512", true, DomainFilter{}, false, stub, 300)
|
return NewRfc2136Provider("", 0, "", false, "key", "secret", "hmac-sha512", true, DomainFilter{}, false, 300, stub)
|
||||||
}
|
}
|
||||||
|
|
||||||
func extractAuthoritySectionFromMessage(msg fmt.Stringer) []string {
|
func extractAuthoritySectionFromMessage(msg fmt.Stringer) []string {
|
||||||
const searchPattern = "AUTHORITY SECTION:"
|
const searchPattern = "AUTHORITY SECTION:"
|
||||||
data := msg.String()
|
authoritySectionOffset := strings.Index(msg.String(), searchPattern)
|
||||||
authoritySectionOffset := strings.Index(data, searchPattern)
|
return strings.Split(strings.TrimSpace(msg.String()[authoritySectionOffset+len(searchPattern):]), "\n")
|
||||||
return strings.Split(strings.TrimSpace(data[authoritySectionOffset+len(searchPattern):]), "\n")
|
|
||||||
}
|
}
|
||||||
|
|
||||||
// TestRfc2136GetRecordsMultipleTargets simulates a single record with multiple targets.
|
// TestRfc2136GetRecordsMultipleTargets simulates a single record with multiple targets.
|
||||||
|
Loading…
Reference in New Issue
Block a user