v1alpha1

package
v0.0.0-...-be1e11a Latest Latest
Warning

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

Go to latest
Published: Aug 6, 2021 License: Apache-2.0 Imports: 12 Imported by: 0

Documentation

Overview

Package v1alpha1 contains the v1alpha1 group DNS resources of the Cloudflare provider. +kubebuilder:object:generate=true +groupName=dns.cloudflare.crossplane.io +versionName=v1alpha1

Index

Constants

View Source
const (
	Group   = "dns.cloudflare.crossplane.io"
	Version = "v1alpha1"
)

Package type metadata.

Variables

View Source
var (
	// SchemeGroupVersion is group version used to register these objects
	SchemeGroupVersion = schema.GroupVersion{Group: Group, Version: Version}

	// SchemeBuilder is used to add go types to the GroupVersionKind scheme
	SchemeBuilder = &scheme.Builder{GroupVersion: SchemeGroupVersion}
)
View Source
var (
	RecordKind             = reflect.TypeOf(Record{}).Name()
	RecordGroupKind        = schema.GroupKind{Group: Group, Kind: RecordKind}.String()
	RecordKindAPIVersion   = RecordKind + "." + SchemeGroupVersion.String()
	RecordGroupVersionKind = SchemeGroupVersion.WithKind(RecordKind)
)

Record type metadata.

Functions

func RecordFQDN

func RecordFQDN() reference.ExtractValueFn

RecordFQDN resolves the FQDN field out of a DNS Record's status. This may be used by other resources to avoid calculating the FQDN of a record.

Types

type Record

type Record struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`

	Spec   RecordSpec   `json:"spec"`
	Status RecordStatus `json:"status,omitempty"`
}

A Record represents a single DNS Record managed on a Zone. +kubebuilder:subresource:status +kubebuilder:printcolumn:name="READY",type="string",JSONPath=".status.conditions[?(@.type=='Ready')].status" +kubebuilder:printcolumn:name="SYNCED",type="string",JSONPath=".status.conditions[?(@.type=='Synced')].status" +kubebuilder:printcolumn:name="FQDN",type="string",JSONPath=".status.atProvider.fqdn" +kubebuilder:printcolumn:name="AGE",type="date",JSONPath=".metadata.creationTimestamp" +kubebuilder:resource:scope=Cluster,categories={crossplane,managed,cloudflare}

func (*Record) DeepCopy

func (in *Record) DeepCopy() *Record

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Record.

func (*Record) DeepCopyInto

func (in *Record) DeepCopyInto(out *Record)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*Record) DeepCopyObject

func (in *Record) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

func (*Record) GetCondition

func (mg *Record) GetCondition(ct xpv1.ConditionType) xpv1.Condition

GetCondition of this Record.

func (*Record) GetDeletionPolicy

func (mg *Record) GetDeletionPolicy() xpv1.DeletionPolicy

GetDeletionPolicy of this Record.

func (*Record) GetProviderConfigReference

func (mg *Record) GetProviderConfigReference() *xpv1.Reference

GetProviderConfigReference of this Record.

func (*Record) GetProviderReference

func (mg *Record) GetProviderReference() *xpv1.Reference

GetProviderReference of this Record. Deprecated: Use GetProviderConfigReference.

func (*Record) GetWriteConnectionSecretToReference

func (mg *Record) GetWriteConnectionSecretToReference() *xpv1.SecretReference

GetWriteConnectionSecretToReference of this Record.

func (*Record) ResolveReferences

func (dr *Record) ResolveReferences(ctx context.Context, c client.Reader) error

ResolveReferences resolves references to the Zone that this DNS Record is managed on.

func (*Record) SetConditions

func (mg *Record) SetConditions(c ...xpv1.Condition)

SetConditions of this Record.

func (*Record) SetDeletionPolicy

func (mg *Record) SetDeletionPolicy(r xpv1.DeletionPolicy)

SetDeletionPolicy of this Record.

func (*Record) SetProviderConfigReference

func (mg *Record) SetProviderConfigReference(r *xpv1.Reference)

SetProviderConfigReference of this Record.

func (*Record) SetProviderReference

func (mg *Record) SetProviderReference(r *xpv1.Reference)

SetProviderReference of this Record. Deprecated: Use SetProviderConfigReference.

func (*Record) SetWriteConnectionSecretToReference

func (mg *Record) SetWriteConnectionSecretToReference(r *xpv1.SecretReference)

SetWriteConnectionSecretToReference of this Record.

type RecordList

type RecordList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	Items           []Record `json:"items"`
}

RecordList contains a list of DNS Record objects

func (*RecordList) DeepCopy

func (in *RecordList) DeepCopy() *RecordList

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RecordList.

func (*RecordList) DeepCopyInto

func (in *RecordList) DeepCopyInto(out *RecordList)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*RecordList) DeepCopyObject

func (in *RecordList) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

func (*RecordList) GetItems

func (l *RecordList) GetItems() []resource.Managed

GetItems of this RecordList.

type RecordObservation

type RecordObservation struct {
	// Proxiable indicates whether this record _can be_ proxied
	// via Cloudflare.
	Proxiable bool `json:"proxiable,omitempty"`

	// FQDN contains the full FQDN of the created record
	// (Record Name + Zone).
	FQDN string `json:"fqdn,omitempty"`

	// Zone contains the name of the Zone this record
	// is managed on.
	Zone string `json:"zone,omitempty"`

	// Locked indicates if this record is locked or not.
	Locked bool `json:"locked,omitempty"`

	// CreatedOn indicates when this record was created
	// on Cloudflare.
	CreatedOn *metav1.Time `json:"createdOn,omitempty"`

	// ModifiedOn indicates when this record was modified
	// on Cloudflare.
	ModifiedOn *metav1.Time `json:"modifiedOn,omitempty"`
}

RecordObservation is the observable fields of a DNS Record.

func (*RecordObservation) DeepCopy

func (in *RecordObservation) DeepCopy() *RecordObservation

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RecordObservation.

func (*RecordObservation) DeepCopyInto

func (in *RecordObservation) DeepCopyInto(out *RecordObservation)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RecordParameters

type RecordParameters struct {
	// Type is the type of DNS Record.
	// +kubebuilder:validation:Enum=A;AAAA;CAA;CNAME;TXT;SRV;LOC;MX;NS;SPF;CERT;DNSKEY;DS;NAPTR;SMIMEA;SSHFP;TLSA;URI
	// +kubebuilder:default=A
	// +immutable
	// +optional
	Type *string `json:"type,omitempty"`

	// Name of the DNS Record.
	// +kubebuilder:validation:MaxLength=255
	Name string `json:"name"`

	// Content of the DNS Record
	Content string `json:"content"`

	// TTL of the DNS Record.
	// +kubebuilder:default=1
	// +kubebuilder:validation:Minimum=0
	// +optional
	TTL *int64 `json:"ttl,omitempty"`

	// Proxied enables or disables proxying traffic via Cloudflare.
	// +optional
	Proxied *bool `json:"proxied,omitempty"`

	// Priority of a record.
	// +kubebuilder:validation:Minimum=0
	// +kubebuilder:validation:Maximum=65535
	// +optional
	Priority *int32 `json:"priority,omitempty"`

	// ZoneID this DNS Record is managed on.
	// +immutable
	// +optional
	Zone *string `json:"zone,omitempty"`

	// ZoneRef references the Zone object this DNS Record is managed on.
	// +immutable
	// +optional
	ZoneRef *xpv1.Reference `json:"zoneRef,omitempty"`

	// ZoneSelector selects the Zone object this DNS Record is managed on.
	// +immutable
	// +optional
	ZoneSelector *xpv1.Selector `json:"zoneSelector,omitempty"`
}

RecordParameters are the configurable fields of a DNS Record.

func (*RecordParameters) DeepCopy

func (in *RecordParameters) DeepCopy() *RecordParameters

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RecordParameters.

func (*RecordParameters) DeepCopyInto

func (in *RecordParameters) DeepCopyInto(out *RecordParameters)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RecordSpec

type RecordSpec struct {
	xpv1.ResourceSpec `json:",inline"`
	ForProvider       RecordParameters `json:"forProvider"`
}

A RecordSpec defines the desired state of a DNS Record.

func (*RecordSpec) DeepCopy

func (in *RecordSpec) DeepCopy() *RecordSpec

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RecordSpec.

func (*RecordSpec) DeepCopyInto

func (in *RecordSpec) DeepCopyInto(out *RecordSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RecordStatus

type RecordStatus struct {
	xpv1.ResourceStatus `json:",inline"`
	AtProvider          RecordObservation `json:"atProvider,omitempty"`
}

A RecordStatus represents the observed state of a DNS Record.

func (*RecordStatus) DeepCopy

func (in *RecordStatus) DeepCopy() *RecordStatus

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RecordStatus.

func (*RecordStatus) DeepCopyInto

func (in *RecordStatus) DeepCopyInto(out *RecordStatus)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

Jump to

Keyboard shortcuts

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