Documentation ¶
Overview ¶
Package ovh implements a DNS provider for solving the DNS-01 challenge using OVH DNS.
Index ¶
Constants ¶
const ( EnvEndpoint = envNamespace + "ENDPOINT" EnvApplicationKey = envNamespace + "APPLICATION_KEY" EnvApplicationSecret = envNamespace + "APPLICATION_SECRET" EnvConsumerKey = envNamespace + "CONSUMER_KEY" 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 { APIEndpoint string ApplicationKey string ApplicationSecret string ConsumerKey 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 is an implementation of the challenge.Provider interface that uses OVH's REST API to manage TXT records for a domain.
func NewDNSProvider ¶
func NewDNSProvider() (*DNSProvider, error)
NewDNSProvider returns a DNSProvider instance configured for OVH Credentials must be passed in the environment variable: OVH_ENDPOINT : it must be ovh-eu or ovh-ca OVH_APPLICATION_KEY OVH_APPLICATION_SECRET OVH_CONSUMER_KEY
func NewDNSProviderConfig ¶
func NewDNSProviderConfig(config *Config) (*DNSProvider, error)
NewDNSProviderConfig return a DNSProvider instance configured for OVH.
func (*DNSProvider) CleanUp ¶
func (d *DNSProvider) CleanUp(domain, token, fqdn, value string) error
CleanUp removes the TXT record matching the specified parameters
func (*DNSProvider) Present ¶
func (d *DNSProvider) Present(domain, token, fqdn, value 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.