Documentation ¶
Overview ¶
Package utils implements common, reusable helpers
Index ¶
- func Dig(fqdn string, edgeDNSServers ...DNSServer) (ips []string, err error)
- func Exchange(m *dns.Msg, edgeDNSServers []DNSServer) (msg *dns.Msg, err error)
- func GetType(v interface{}) string
- func MergeAnnotations(target map[string]string, source map[string]string) map[string]string
- func SplitAfter(s string, re *regexp.Regexp) (r []string)
- func YamlToGslb(yaml []byte) (*k8gbv1beta1.Gslb, error)
- type DNSList
- type DNSMock
- func (m *DNSMock) AddAAAARecord(ip net.IP) *DNSMock
- func (m *DNSMock) AddARecord(fqdn string, ip net.IP) *DNSMock
- func (m *DNSMock) AddNSRecord(fqdn, nsName string) *DNSMock
- func (m *DNSMock) AddTXTRecord(fqdn string, strings ...string) *DNSMock
- func (m *DNSMock) RunTestFunc(f func()) *Result
- func (m *DNSMock) Start() *DNSMock
- type DNSServer
- type FakeDNSSettings
- type ReconcileResultHandler
- type Result
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func Dig ¶
Dig returns a list of IP addresses for a given FQDN by using the dns servers from edgeDNSServers dns servers are tried one by one from the edgeDNSServers and if there is a non-error response it is returned and the rest is not tried
func MergeAnnotations ¶
MergeAnnotations adds or updates annotations from source to target and returns merge
func SplitAfter ¶
SplitAfter works as the same way as strings.SplitAfter() but the separator is regexp
func YamlToGslb ¶
func YamlToGslb(yaml []byte) (*k8gbv1beta1.Gslb, error)
YamlToGslb takes yaml and returns Gslb object
Types ¶
type DNSMock ¶
type DNSMock struct {
// contains filtered or unexported fields
}
DNSMock acts as DNS server but returns mock values
func NewFakeDNS ¶
func NewFakeDNS(settings FakeDNSSettings) *DNSMock
func (*DNSMock) AddNSRecord ¶
func (*DNSMock) AddTXTRecord ¶
func (*DNSMock) RunTestFunc ¶
type FakeDNSSettings ¶
type ReconcileResultHandler ¶
type ReconcileResultHandler struct {
// contains filtered or unexported fields
}
func NewReconcileResultHandler ¶
func NewReconcileResultHandler(reconcileAfter int) *ReconcileResultHandler
func (*ReconcileResultHandler) Requeue ¶
func (r *ReconcileResultHandler) Requeue() (ctrl.Result, error)
Requeue requeue loop after config.ReconcileRequeueSeconds this apply in case you didn't modify request resources. If so, reconciliation starts immediately see: https://github.com/operator-framework/operator-sdk/issues/1164
func (*ReconcileResultHandler) RequeueError ¶
func (r *ReconcileResultHandler) RequeueError(err error) (ctrl.Result, error)
RequeueError requeue loop immediately see default controller limiter: https://danielmangum.com/posts/controller-runtime-client-go-rate-limiting/
func (*ReconcileResultHandler) RequeueNow ¶
func (r *ReconcileResultHandler) RequeueNow() (ctrl.Result, error)