Documentation

Overview

    Package godaddy implements a DNS provider for solving the DNS-01 challenge using godaddy DNS.

    Index

    Constants

    View Source
    const (
    	EnvAPIKey    = envNamespace + "API_KEY"
    	EnvAPISecret = envNamespace + "API_SECRET"
    
    	EnvTTL                = envNamespace + "TTL"
    	EnvPropagationTimeout = envNamespace + "PROPAGATION_TIMEOUT"
    	EnvPollingInterval    = envNamespace + "POLLING_INTERVAL"
    	EnvHTTPTimeout        = envNamespace + "HTTP_TIMEOUT"
    )

      Environment variables names.

      Variables

      This section is empty.

      Functions

      This section is empty.

      Types

      type Config

      type Config struct {
      	APIKey             string
      	APISecret          string
      	PropagationTimeout time.Duration
      	PollingInterval    time.Duration
      	TTL                int
      	HTTPClient         *http.Client
      }

        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 configured for godaddy. Credentials must be passed in the environment variables: GODADDY_API_KEY and GODADDY_API_SECRET.

              func NewDNSProviderConfig

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

                NewDNSProviderConfig return a DNSProvider instance configured for godaddy.

                func (*DNSProvider) CleanUp

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

                  CleanUp removes the 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) 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.

                      type DNSRecord

                      type DNSRecord struct {
                      	Name     string `json:"name,omitempty"`
                      	Type     string `json:"type,omitempty"`
                      	Data     string `json:"data"`
                      	Priority int    `json:"priority,omitempty"`
                      	TTL      int    `json:"ttl,omitempty"`
                      }

                        DNSRecord a DNS record.