Documentation
¶
Overview ¶
Package directadmin implements a DNS record management client compatible with the libdns interfaces for DirectAdmin.
Index ¶
- Variables
- type Provider
- func (p *Provider) AppendRecords(ctx context.Context, zone string, records []libdns.Record) ([]libdns.Record, error)
- func (p *Provider) DeleteRecords(ctx context.Context, zone string, records []libdns.Record) ([]libdns.Record, error)
- func (p *Provider) GetRecords(ctx context.Context, zone string) ([]libdns.Record, error)
- func (p *Provider) SetRecords(ctx context.Context, zone string, records []libdns.Record) ([]libdns.Record, error)
Constants ¶
This section is empty.
Variables ¶
View Source
var ErrUnsupported = errors.New("unsupported record type")
Functions ¶
This section is empty.
Types ¶
type Provider ¶
type Provider struct {
Logger *zap.Logger `json:"-"`
// ServerURL should be the hostname (with port if necessary) of the DirectAdmin instance
// you are trying to use
ServerURL string `json:"host,omitempty"`
// User should be the DirectAdmin username that the Login Key is created under
User string `json:"user,omitempty"`
// LoginKey is used for authentication
//
// The key will need two permissions:
//
// `CMD_API_SHOW_DOMAINS` - Required for automatic zone detection
//
// `CMD_API_DNS_CONTROL` - Required for DNS record management
//
// Both permissions are required for all operations as the provider
// uses automatic zone detection to handle subdomains correctly
LoginKey string `json:"login_key,omitempty"`
// InsecureRequests is an optional parameter used to ignore SSL related errors on the
// DirectAdmin host
InsecureRequests bool `json:"insecure_requests,omitempty"`
// contains filtered or unexported fields
}
Provider facilitates DNS record manipulation with DirectAdmin.
func (*Provider) AppendRecords ¶
func (p *Provider) AppendRecords(ctx context.Context, zone string, records []libdns.Record) ([]libdns.Record, error)
AppendRecords adds records to the zone. It returns the records that were added.
func (*Provider) DeleteRecords ¶
func (p *Provider) DeleteRecords(ctx context.Context, zone string, records []libdns.Record) ([]libdns.Record, error)
DeleteRecords deletes the records from the zone. It returns the records that were deleted.
func (*Provider) GetRecords ¶
GetRecords lists all the records in the zone.
Click to show internal directories.
Click to hide internal directories.


