Documentation ¶
Overview ¶
Package stackpath implements a DNS provider for solving the DNS-01 challenge using Stackpath DNS. https://developer.stackpath.com/en/api/dns/
Index ¶
Constants ¶
const ( EnvClientID = envNamespace + "CLIENT_ID" EnvClientSecret = envNamespace + "CLIENT_SECRET" EnvStackID = envNamespace + "STACK_ID" EnvTTL = envNamespace + "TTL" EnvPropagationTimeout = envNamespace + "PROPAGATION_TIMEOUT" EnvPollingInterval = envNamespace + "POLLING_INTERVAL" )
Environment variables names.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Config ¶
type Config struct { ClientID string ClientSecret string StackID string TTL int PropagationTimeout time.Duration PollingInterval 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 ¶
DNSProvider implements the challenge.Provider interface.
func NewDNSProvider ¶
func NewDNSProvider() (*DNSProvider, error)
NewDNSProvider returns a DNSProvider instance configured for Stackpath. Credentials must be passed in the environment variables: STACKPATH_CLIENT_ID, STACKPATH_CLIENT_SECRET, and STACKPATH_STACK_ID.
func NewDNSProviderConfig ¶
func NewDNSProviderConfig(config *Config) (*DNSProvider, error)
NewDNSProviderConfig return a DNSProvider instance configured for Stackpath.
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) 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 ErrorResponse ¶
ErrorResponse the API error response representation.
func (*ErrorResponse) Error ¶
func (e *ErrorResponse) Error() string
type Record ¶
type Record struct { ID string `json:"id,omitempty"` Name string `json:"name"` Type string `json:"type"` TTL int `json:"ttl"` Data string `json:"data"` }
Record a DNS record representation.