Documentation

Index

Constants

This section is empty.

Variables

View Source
var ErrDomainMissing = errors.New("domain is missing")

    ErrDomainMissing - Indicates domain is missing

    View Source
    var ErrNoEntriesFound = errors.New("No entries found for this key")

      ErrNoEntriesFound - Indicates no entries were found for the given key (directory)

      View Source
      var (
      
      	// ErrNotImplemented - Indicates the functionality which is not implemented
      	ErrNotImplemented = errors.New("The method is not implemented")
      )

      Functions

      This section is empty.

      Types

      type CoreDNS

      type CoreDNS struct {
      	// contains filtered or unexported fields
      }

        CoreDNS - represents dns config for coredns server.

        func (*CoreDNS) Close

        func (c *CoreDNS) Close() error

          Close closes the internal etcd client and cannot be used further

          func (*CoreDNS) Delete

          func (c *CoreDNS) Delete(bucket string) error

            Delete - Removes DNS entries added in Put().

            func (*CoreDNS) DeleteRecord

            func (c *CoreDNS) DeleteRecord(record SrvRecord) error

              DeleteRecord - Removes a specific DNS entry

              func (*CoreDNS) Get

              func (c *CoreDNS) Get(bucket string) ([]SrvRecord, error)

                Get - Retrieves DNS records for a bucket.

                func (*CoreDNS) List

                func (c *CoreDNS) List() (map[string][]SrvRecord, error)

                  List - Retrieves list of DNS entries for the domain.

                  func (*CoreDNS) Put

                  func (c *CoreDNS) Put(bucket string) error

                    Put - Adds DNS entries into etcd endpoint in CoreDNS etcd message format.

                    func (*CoreDNS) String

                    func (c *CoreDNS) String() string

                      String stringer name for this implementation of dns.Store

                      type ErrInvalidBucketName

                      type ErrInvalidBucketName Error

                        ErrInvalidBucketName for buckets with invalid name

                        func (ErrInvalidBucketName) Error

                        func (e ErrInvalidBucketName) Error() string

                        type Error

                        type Error struct {
                        	Bucket string
                        	Err    error
                        }

                          Error - DNS related errors error.

                          func (Error) Error

                          func (e Error) Error() string

                          type EtcdOption

                          type EtcdOption func(*CoreDNS)

                            EtcdOption - functional options pattern style

                            func CoreDNSPath

                            func CoreDNSPath(prefix string) EtcdOption

                              CoreDNSPath - custom prefix on etcd to populate DNS service records, optional and can be empty. if empty then c.prefixPath is used i.e "/skydns"

                              func DomainIPs

                              func DomainIPs(domainIPs set.StringSet) EtcdOption

                                DomainIPs set a list of custom domain IPs, note this will fail if set to empty when constructor initializes.

                                func DomainNames

                                func DomainNames(domainNames []string) EtcdOption

                                  DomainNames set a list of domain names used by this CoreDNS client setting, note this will fail if set to empty when constructor initializes.

                                  func DomainPort

                                  func DomainPort(domainPort string) EtcdOption

                                    DomainPort - is a string version of server port

                                    type OperatorDNS

                                    type OperatorDNS struct {
                                    	Endpoint string
                                    	// contains filtered or unexported fields
                                    }

                                      OperatorDNS - represents dns config for MinIO k8s operator.

                                      func (*OperatorDNS) Close

                                      func (c *OperatorDNS) Close() error

                                        Close closes the internal http client

                                        func (*OperatorDNS) Delete

                                        func (c *OperatorDNS) Delete(bucket string) error

                                          Delete - Removes DNS entries added in Put().

                                          func (*OperatorDNS) DeleteRecord

                                          func (c *OperatorDNS) DeleteRecord(record SrvRecord) error

                                            DeleteRecord - Removes a specific DNS entry No Op for Operator because operator deals on with bucket entries

                                            func (*OperatorDNS) Get

                                            func (c *OperatorDNS) Get(bucket string) (srvRecords []SrvRecord, err error)

                                              Get - Retrieves DNS records for a bucket. This is a No Op for Operator because, there is no intent to enforce global namespace at MinIO level with this DNS entry. The global namespace in enforced by the Kubernetes Operator

                                              func (*OperatorDNS) List

                                              func (c *OperatorDNS) List() (srvRecords map[string][]SrvRecord, err error)

                                                List - Retrieves list of DNS entries for the domain. This is a No Op for Operator because, there is no intent to enforce global namespace at MinIO level with this DNS entry. The global namespace in enforced by the Kubernetes Operator

                                                func (*OperatorDNS) Put

                                                func (c *OperatorDNS) Put(bucket string) error

                                                  Put - Adds DNS entries into operator webhook server

                                                  func (*OperatorDNS) String

                                                  func (c *OperatorDNS) String() string

                                                    String stringer name for this implementation of dns.Store

                                                    type OperatorOption

                                                    type OperatorOption func(*OperatorDNS)

                                                      OperatorOption - functional options pattern style for OperatorDNS

                                                      func Authentication

                                                      func Authentication(username, password string) OperatorOption

                                                        Authentication - custom username and password for authenticating at the endpoint

                                                        func RootCAs

                                                        func RootCAs(CAs *x509.CertPool) OperatorOption

                                                          RootCAs - add custom trust certs pool

                                                          type SrvRecord

                                                          type SrvRecord struct {
                                                          	Host     string      `json:"host,omitempty"`
                                                          	Port     json.Number `json:"port,omitempty"`
                                                          	Priority int         `json:"priority,omitempty"`
                                                          	Weight   int         `json:"weight,omitempty"`
                                                          	Text     string      `json:"text,omitempty"`
                                                          	Mail     bool        `json:"mail,omitempty"` // Be an MX record. Priority becomes Preference.
                                                          	TTL      uint32      `json:"ttl,omitempty"`
                                                          
                                                          	// Holds info about when the entry was created first.
                                                          	CreationDate time.Time `json:"creationDate"`
                                                          
                                                          	// When a SRV record with a "Host: IP-address" is added, we synthesize
                                                          	// a srv.Target domain name.  Normally we convert the full Key where
                                                          	// the record lives to a DNS name and use this as the srv.Target. When
                                                          	// TargetStrip > 0 we strip the left most TargetStrip labels from the
                                                          	// DNS name.
                                                          	TargetStrip int `json:"targetstrip,omitempty"`
                                                          
                                                          	// Group is used to group (or *not* to group) different services
                                                          	// together. Services with an identical Group are returned in
                                                          	// the same answer.
                                                          	Group string `json:"group,omitempty"`
                                                          
                                                          	// Key carries the original key used during Put().
                                                          	Key string `json:"-"`
                                                          }

                                                            SrvRecord - represents a DNS service record

                                                            type Store

                                                            type Store interface {
                                                            	Put(bucket string) error
                                                            	Get(bucket string) ([]SrvRecord, error)
                                                            	Delete(bucket string) error
                                                            	List() (map[string][]SrvRecord, error)
                                                            	DeleteRecord(record SrvRecord) error
                                                            	Close() error
                                                            	String() string
                                                            }

                                                              Store dns record store

                                                              func NewCoreDNS

                                                              func NewCoreDNS(cfg clientv3.Config, setters ...EtcdOption) (Store, error)

                                                                NewCoreDNS - initialize a new coreDNS set/unset values.

                                                                func NewOperatorDNS

                                                                func NewOperatorDNS(endpoint string, setters ...OperatorOption) (Store, error)

                                                                  NewOperatorDNS - initialize a new K8S Operator DNS set/unset values.