Documentation

Overview

    Package easydns implements a DNS provider for solving the DNS-01 challenge using EasyDNS API.

    Index

    Constants

    View Source
    const (
    	EnvEndpoint = envNamespace + "ENDPOINT"
    	EnvToken    = envNamespace + "TOKEN"
    	EnvKey      = envNamespace + "KEY"
    
    	EnvTTL                = envNamespace + "TTL"
    	EnvPropagationTimeout = envNamespace + "PROPAGATION_TIMEOUT"
    	EnvPollingInterval    = envNamespace + "POLLING_INTERVAL"
    	EnvHTTPTimeout        = envNamespace + "HTTP_TIMEOUT"
    	EnvSequenceInterval   = envNamespace + "SEQUENCE_INTERVAL"
    )

      Environment variables names.

      Variables

      This section is empty.

      Functions

      This section is empty.

      Types

      type Config

      type Config struct {
      	Endpoint           *url.URL
      	Token              string
      	Key                string
      	TTL                int
      	HTTPClient         *http.Client
      	PropagationTimeout time.Duration
      	PollingInterval    time.Duration
      	SequenceInterval   time.Duration
      }

        Config is used to configure the creation of the DNSProvider.

        func NewDefaultConfig

        func NewDefaultConfig() *Config

          NewDefaultConfig returns a default configuration for the DNSProvider.

          type DNSProvider

          type DNSProvider struct {
          	// contains filtered or unexported fields
          }

            DNSProvider implements the challenge.Provider interface.

            func NewDNSProvider

            func NewDNSProvider() (*DNSProvider, error)

              NewDNSProvider returns a DNSProvider instance.

              func NewDNSProviderConfig

              func NewDNSProviderConfig(config *Config) (*DNSProvider, error)

                NewDNSProviderConfig return a DNSProvider instance configured for EasyDNS.

                func (*DNSProvider) CleanUp

                func (d *DNSProvider) CleanUp(domain, token, keyAuth string) error

                  CleanUp removes the TXT record matching the specified parameters.

                  func (*DNSProvider) Present

                  func (d *DNSProvider) Present(domain, token, keyAuth string) error

                    Present creates a TXT record to fulfill the dns-01 challenge.

                    func (*DNSProvider) Sequential

                    func (d *DNSProvider) Sequential() time.Duration

                      Sequential All DNS challenges for this provider will be resolved sequentially. Returns the interval between each iteration.

                      func (*DNSProvider) Timeout

                      func (d *DNSProvider) Timeout() (timeout, interval time.Duration)

                        Timeout returns the timeout and interval to use when checking for DNS propagation. Adjusting here to cope with spikes in propagation times.