controller

package
v0.0.0-...-a4dafdb Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jun 11, 2019 License: Apache-2.0 Imports: 23 Imported by: 0

Documentation

Index

Constants

View Source
const (
	// DefaultExternalDNSPublicZoneController is the name of the default
	// ExternalDNS instance  for the public hosted zone.
	DefaultExternalDNSPublicZoneController = "default-public-zone"

	// DefaultExternalDNSPrivateZoneController is the name of the default
	// ExternalDNS instance for the private hosted zone.
	DefaultExternalDNSPrivateZoneController = "default-private-zone"

	// ExternalDNSControllerFinalizer is applied to an ExternalDNS before being considered
	// for processing. This ensures the operator has a chance to handle all states.
	ExternalDNSControllerFinalizer = "externaldns.operator.openshift.io/externaldns-controller"

	// Unknown release version
	UnknownReleaseVersionName = "unknown"
)

Variables

This section is empty.

Functions

func ExternalDNSDeploymentNamespacedName

func ExternalDNSDeploymentNamespacedName(edns *operatorv1.ExternalDNS) types.NamespacedName

ExternalDNSDeploymentNamespacedName returns the namespaced name for the externaldns Deployment.

func ExternalDNSDeploymentPodSelector

func ExternalDNSDeploymentPodSelector(edns *operatorv1.ExternalDNS) *metav1.LabelSelector

ExternalDNSDeploymentPodSelector returns a LabelSelector based on the name of edns.

func ExternalDNSName

func ExternalDNSName(edns *operatorv1.ExternalDNS) string

ExternalDNSName returns the name of edns as a string.

func ExternalDNSNamespace

func ExternalDNSNamespace(edns *operatorv1.ExternalDNS) string

ExternalDNSNamespace returns the namespace of edns as a string.

func ExternalDNSNamespaceName

func ExternalDNSNamespaceName(edns *operatorv1.ExternalDNS) string

ExternalDNSNamespaceName returns namespace/name string of edns.

func ExternalDNSNamespacedName

func ExternalDNSNamespacedName(edns *operatorv1.ExternalDNS) types.NamespacedName

ExternalDNSNamespacedName returns the namespaced name of edns.

func IsStatusBaseDomainSet

func IsStatusBaseDomainSet(edns *operatorv1.ExternalDNS) bool

IsStatusBaseDomainSet checks whether status.baseDomain of edns is set.

func IsStatusProviderSet

func IsStatusProviderSet(edns *operatorv1.ExternalDNS) bool

IsStatusProviderSet checks whether status.provider of edns is set.

func New

func New(mgr manager.Manager, config Config) (controller.Controller, error)

New creates the operator controller from configuration. This is the controller that handles all the logic for implementing externaldns based on ExternalDNS resources.

The controller will be pre-configured to watch for ExternalDNS resources.

func TextOwnerID

func TextOwnerID(infraConfig *configv1.Infrastructure, edns *operatorv1.ExternalDNS) string

TextOwnerID returns the ExternalDNS controller txt owner id.

Types

type Config

type Config struct {
	KubeConfig       *rest.Config
	Namespace        string
	ExternalDNSImage string
	Credentials      *corev1.Secret
}

Config holds all the things necessary for the controller to run.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL