Documentation ¶
Overview ¶
Package exoscale implements a DNS provider for solving the DNS-01 challenge using exoscale DNS.
Index ¶
- type Config
- type DNSProvider
- func (d *DNSProvider) CleanUp(domain, token, keyAuth string) error
- func (d *DNSProvider) FindExistingRecordID(zone, recordName string) (int64, error)
- func (d *DNSProvider) FindZoneAndRecordName(fqdn, domain string) (string, string, error)
- func (d *DNSProvider) Present(domain, token, keyAuth string) error
- func (d *DNSProvider) Timeout() (timeout, interval time.Duration)
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Config ¶ added in v1.1.0
type Config struct { APIKey string APISecret string Endpoint string HTTPClient *http.Client PropagationTimeout time.Duration PollingInterval time.Duration TTL int }
Config is used to configure the creation of the DNSProvider
func NewDefaultConfig ¶ added in v1.1.0
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 acme.ChallengeProvider interface.
func NewDNSProvider ¶
func NewDNSProvider() (*DNSProvider, error)
NewDNSProvider Credentials must be passed in the environment variables: EXOSCALE_API_KEY, EXOSCALE_API_SECRET, EXOSCALE_ENDPOINT.
func NewDNSProviderClient ¶
func NewDNSProviderClient(key, secret, endpoint string) (*DNSProvider, error)
NewDNSProviderClient Uses the supplied parameters to return a DNSProvider instance configured for Exoscale. Deprecated
func NewDNSProviderConfig ¶ added in v1.1.0
func NewDNSProviderConfig(config *Config) (*DNSProvider, error)
NewDNSProviderConfig return a DNSProvider instance configured for Exoscale.
func (*DNSProvider) CleanUp ¶
func (d *DNSProvider) CleanUp(domain, token, keyAuth string) error
CleanUp removes the record matching the specified parameters.
func (*DNSProvider) FindExistingRecordID ¶
func (d *DNSProvider) FindExistingRecordID(zone, recordName string) (int64, error)
FindExistingRecordID Query Exoscale to find an existing record for this name. Returns nil if no record could be found
func (*DNSProvider) FindZoneAndRecordName ¶
func (d *DNSProvider) FindZoneAndRecordName(fqdn, domain string) (string, string, error)
FindZoneAndRecordName Extract DNS zone and DNS entry name
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 ¶ added in v1.1.0
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.