Documentation ¶
Index ¶
- Constants
- func Add(mgr manager.Manager) error
- func DeleteAWSRecordSets(awsClient awsclient.Client, dnsZone *hivev1.DNSZone, logger log.FieldLogger) error
- func DeleteAzureRecordSets(azureClient azureclient.Client, dnsZone *hivev1.DNSZone, ...) error
- func DeleteGCPRecordSets(gcpClient gcpclient.Client, dnsZone *hivev1.DNSZone, logger log.FieldLogger) error
- type AWSActuator
- func (a *AWSActuator) Create() error
- func (a *AWSActuator) Delete() error
- func (a *AWSActuator) Exists() (bool, error)
- func (a *AWSActuator) GetNameServers() ([]string, error)
- func (a *AWSActuator) Refresh() error
- func (a *AWSActuator) SetConditionsForError(err error) bool
- func (a *AWSActuator) UpdateMetadata() error
- type Actuator
- type AzureActuator
- func (a *AzureActuator) Create() error
- func (a *AzureActuator) Delete() error
- func (a *AzureActuator) Exists() (bool, error)
- func (a *AzureActuator) GetNameServers() ([]string, error)
- func (a *AzureActuator) Refresh() error
- func (a *AzureActuator) SetConditionsForError(err error) bool
- func (a *AzureActuator) UpdateMetadata() error
- type GCPActuator
- func (a *GCPActuator) Create() error
- func (a *GCPActuator) Delete() error
- func (a *GCPActuator) Exists() (bool, error)
- func (a *GCPActuator) GetNameServers() ([]string, error)
- func (a *GCPActuator) Refresh() error
- func (a *GCPActuator) SetConditionsForError(err error) bool
- func (a *GCPActuator) UpdateMetadata() error
- type ReconcileDNSZone
Constants ¶
const (
ControllerName = hivev1.DNSZoneControllerName
)
Variables ¶
This section is empty.
Functions ¶
func Add ¶
Add creates a new DNSZone Controller and adds it to the Manager with default RBAC. The Manager will set fields on the Controller and Start it when the Manager is Started.
func DeleteAWSRecordSets ¶ added in v1.0.9
func DeleteAWSRecordSets(awsClient awsclient.Client, dnsZone *hivev1.DNSZone, logger log.FieldLogger) error
DeleteAWSRecordSets will clean up a DNS zone down to the minimum required record entries
func DeleteAzureRecordSets ¶ added in v1.0.10
func DeleteAzureRecordSets(azureClient azureclient.Client, dnsZone *hivev1.DNSZone, logger log.FieldLogger) error
DeleteAzureRecordSets will remove all non-essential records from the DNSZone provided.
func DeleteGCPRecordSets ¶ added in v1.0.10
func DeleteGCPRecordSets(gcpClient gcpclient.Client, dnsZone *hivev1.DNSZone, logger log.FieldLogger) error
DeleteGCPRecordSets will delete all non-essential DNS records in the DNSZone provided
Types ¶
type AWSActuator ¶
type AWSActuator struct {
// contains filtered or unexported fields
}
AWSActuator manages getting the desired state, getting the current state and reconciling the two.
func NewAWSActuator ¶
func NewAWSActuator( logger log.FieldLogger, kubeClient client.Client, credentials awsclient.CredentialsSource, dnsZone *hivev1.DNSZone, awsClientBuilder awsClientBuilderType, ) (*AWSActuator, error)
NewAWSActuator creates a new AWSActuator object. A new AWSActuator is expected to be created for each controller sync.
func (*AWSActuator) Create ¶
func (a *AWSActuator) Create() error
Create makes an AWS Route53 hosted zone given the DNSZone object.
func (*AWSActuator) Delete ¶
func (a *AWSActuator) Delete() error
Delete removes an AWS Route53 hosted zone, typically because the DNSZone object is in a deleting state.
func (*AWSActuator) Exists ¶
func (a *AWSActuator) Exists() (bool, error)
Exists determines if the route53 hosted zone corresponding to the DNSZone exists
func (*AWSActuator) GetNameServers ¶
func (a *AWSActuator) GetNameServers() ([]string, error)
GetNameServers returns the nameservers listed in the route53 hosted zone NS record.
func (*AWSActuator) Refresh ¶
func (a *AWSActuator) Refresh() error
Refresh gets the AWS object for the zone. If a zone cannot be found or no longer exists, actuator.zoneID remains unset.
func (*AWSActuator) SetConditionsForError ¶ added in v1.0.6
func (a *AWSActuator) SetConditionsForError(err error) bool
SetConditionsForError sets conditions on the dnszone given a specific error. Returns true if conditions changed.
func (*AWSActuator) UpdateMetadata ¶
func (a *AWSActuator) UpdateMetadata() error
UpdateMetadata ensures that the Route53 hosted zone metadata is current with the DNSZone
type Actuator ¶
type Actuator interface { // Create tells the actuator to make a zone in the dns provider. // The platform-specific DNSZone status fields will be populated (eg the zone name). Create() error // Delete tells the actuator to remove the zone from the dns provider. Delete() error // Exists queries if the zone is in the dns provider. Exists() (bool, error) // UpdateMetadata tells the actuator to update the zone's metadata in the dns provider. UpdateMetadata() error // GetNameServers returns a list of nameservers that service the zone in the dns provider. GetNameServers() ([]string, error) // Refresh signals to the actuator that it should get the latest version of the zone from the dns provider. // Refresh MUST be called before any other function is called by the actuator. // Refresh will update the DNSZone object's platform-specific status fields. Refresh() error // SetConditionsForError sets conditions on the dnszone given a specific error SetConditionsForError(err error) bool }
Actuator interface is the interface that is used to add dns provider support to the dnszone controller.
type AzureActuator ¶ added in v1.0.5
type AzureActuator struct {
// contains filtered or unexported fields
}
AzureActuator attempts to make the current state reflect the given desired state.
func NewAzureActuator ¶ added in v1.0.5
func NewAzureActuator( logger log.FieldLogger, secret *corev1.Secret, dnsZone *hivev1.DNSZone, azureClientBuilder azureClientBuilderType, ) (*AzureActuator, error)
NewAzureActuator creates a new NewAzureActuator object. A new NewAzureActuator is expected to be created for each controller sync.
func (*AzureActuator) Create ¶ added in v1.0.5
func (a *AzureActuator) Create() error
Create implements the Create call of the actuator interface
func (*AzureActuator) Delete ¶ added in v1.0.5
func (a *AzureActuator) Delete() error
Delete implements the Delete call of the actuator interface
func (*AzureActuator) Exists ¶ added in v1.0.5
func (a *AzureActuator) Exists() (bool, error)
Exists implements the Exists call of the actuator interface
func (*AzureActuator) GetNameServers ¶ added in v1.0.5
func (a *AzureActuator) GetNameServers() ([]string, error)
GetNameServers implements the GetNameServers call of the actuator interface
func (*AzureActuator) Refresh ¶ added in v1.0.5
func (a *AzureActuator) Refresh() error
Refresh implements the Refresh call of the actuator interface
func (*AzureActuator) SetConditionsForError ¶ added in v1.0.6
func (a *AzureActuator) SetConditionsForError(err error) bool
SetConditionsForError sets conditions on the dnszone given a specific error. Returns true if conditions changed.
func (*AzureActuator) UpdateMetadata ¶ added in v1.0.5
func (a *AzureActuator) UpdateMetadata() error
UpdateMetadata implements the UpdateMetadata call of the actuator interface
type GCPActuator ¶
type GCPActuator struct {
// contains filtered or unexported fields
}
GCPActuator attempts to make the current state reflect the given desired state.
func NewGCPActuator ¶
func NewGCPActuator( logger log.FieldLogger, secret *corev1.Secret, dnsZone *hivev1.DNSZone, gcpClientBuilder gcpClientBuilderType, ) (*GCPActuator, error)
NewGCPActuator creates a new GCPActuator object. A new GCPActuator is expected to be created for each controller sync.
func (*GCPActuator) Create ¶
func (a *GCPActuator) Create() error
Create implements the Create call of the actuator interface
func (*GCPActuator) Delete ¶
func (a *GCPActuator) Delete() error
Delete implements the Delete call of the actuator interface
func (*GCPActuator) Exists ¶
func (a *GCPActuator) Exists() (bool, error)
Exists implements the Exists call of the actuator interface
func (*GCPActuator) GetNameServers ¶
func (a *GCPActuator) GetNameServers() ([]string, error)
GetNameServers implements the GetNameServers call of the actuator interface
func (*GCPActuator) Refresh ¶
func (a *GCPActuator) Refresh() error
Refresh implements the Refresh call of the actuator interface
func (*GCPActuator) SetConditionsForError ¶ added in v1.0.6
func (a *GCPActuator) SetConditionsForError(err error) bool
SetConditionsForError sets conditions on the dnszone given a specific error. Returns true if conditions changed.
func (*GCPActuator) UpdateMetadata ¶
func (a *GCPActuator) UpdateMetadata() error
UpdateMetadata implements the UpdateMetadata call of the actuator interface
type ReconcileDNSZone ¶
ReconcileDNSZone reconciles a DNSZone object