v1alpha1

package
v0.1.1 Latest Latest
Warning

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

Go to latest
Published: Feb 28, 2024 License: MPL-2.0 Imports: 5 Imported by: 0

Documentation

Overview

Package v1alpha1 contains API Schema definitions for the pihole v1alpha1 API group +kubebuilder:object:generate=true +groupName=pihole.lab.johnrowley.co

Index

Constants

This section is empty.

Variables

View Source
var (
	// GroupVersion is group version used to register these objects
	GroupVersion = schema.GroupVersion{Group: "pihole.lab.johnrowley.co", Version: "v1alpha1"}

	// SchemeBuilder is used to add go types to the GroupVersionKind scheme
	SchemeBuilder = &scheme.Builder{GroupVersion: GroupVersion}

	// AddToScheme adds the types in this group-version to the given scheme.
	AddToScheme = SchemeBuilder.AddToScheme
)

Functions

This section is empty.

Types

type ASpec

type ASpec struct {
	// Domain is the domain of the new cname record.
	Domain string `json:"domain"`

	// IP is where the ip address that the a record should resolve to.
	IP string `json:"ip"`
}

ASpec is configuration for a a record.

func (*ASpec) DeepCopy

func (in *ASpec) DeepCopy() *ASpec

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

func (*ASpec) DeepCopyInto

func (in *ASpec) DeepCopyInto(out *ASpec)

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

type CNAMESpec

type CNAMESpec struct {
	// Domain is the domain of the new cname record.
	Domain string `json:"domain"`

	// Target is the domain that the cname should resolve to.
	Target string `json:"target"`
}

CNAMESpace is configuration for a cname record.

func (*CNAMESpec) DeepCopy

func (in *CNAMESpec) DeepCopy() *CNAMESpec

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

func (*CNAMESpec) DeepCopyInto

func (in *CNAMESpec) DeepCopyInto(out *CNAMESpec)

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

type DnsRecord

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

	Spec   DnsRecordSpec   `json:"spec,omitempty"`
	Status DnsRecordStatus `json:"status,omitempty"`
}

DnsRecord is the Schema for the dnsrecords API

func (*DnsRecord) DeepCopy

func (in *DnsRecord) DeepCopy() *DnsRecord

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

func (*DnsRecord) DeepCopyInto

func (in *DnsRecord) DeepCopyInto(out *DnsRecord)

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

func (*DnsRecord) DeepCopyObject

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

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

type DnsRecordList

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

DnsRecordList contains a list of DnsRecord

func (*DnsRecordList) DeepCopy

func (in *DnsRecordList) DeepCopy() *DnsRecordList

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

func (*DnsRecordList) DeepCopyInto

func (in *DnsRecordList) DeepCopyInto(out *DnsRecordList)

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

func (*DnsRecordList) DeepCopyObject

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

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

type DnsRecordSpec

type DnsRecordSpec struct {
	// A configures the this DnsRecordSpec to provide an A record dns record.
	A *ASpec `json:"a,omitempty"`

	// CNAME configures the this DnsRecordSpec to provide an CNAME record dns record.
	CNAME *CNAMESpec `json:"cname,omitempty"`
}

DnsRecordSpec defines the desired state of DnsRecord

func (*DnsRecordSpec) DeepCopy

func (in *DnsRecordSpec) DeepCopy() *DnsRecordSpec

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

func (*DnsRecordSpec) DeepCopyInto

func (in *DnsRecordSpec) DeepCopyInto(out *DnsRecordSpec)

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

type DnsRecordStatus

type DnsRecordStatus struct {
}

DnsRecordStatus defines the observed state of DnsRecord

func (*DnsRecordStatus) DeepCopy

func (in *DnsRecordStatus) DeepCopy() *DnsRecordStatus

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

func (*DnsRecordStatus) DeepCopyInto

func (in *DnsRecordStatus) DeepCopyInto(out *DnsRecordStatus)

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

type PiHole

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

	Spec   PiHoleSpec   `json:"spec,omitempty"`
	Status PiHoleStatus `json:"status,omitempty"`
}

PiHole is the Schema for the piholes API

func (*PiHole) DeepCopy

func (in *PiHole) DeepCopy() *PiHole

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

func (*PiHole) DeepCopyInto

func (in *PiHole) DeepCopyInto(out *PiHole)

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

func (*PiHole) DeepCopyObject

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

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

type PiHoleList

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

PiHoleList contains a list of PiHole

func (*PiHoleList) DeepCopy

func (in *PiHoleList) DeepCopy() *PiHoleList

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

func (*PiHoleList) DeepCopyInto

func (in *PiHoleList) DeepCopyInto(out *PiHoleList)

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

func (*PiHoleList) DeepCopyObject

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

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

type PiHoleSpec

type PiHoleSpec struct {
	// Replicas specifies how many instances should be deployed.
	//
	// Default: 1
	// +optional
	Replicas *int32 `json:"replicas"`

	// Resources configures the resource requirements for the pihole instances.
	// +optional
	Resources corev1.ResourceRequirements `json:"resources"`

	// +optional
	DNS PiHoleSpecDNS `json:"dns"`

	// DNSRecordSelector is used to configure DNSRecord discovery.
	DNSRecordSelector *metav1.LabelSelector `json:"dnsRecordSelector"`

	// DNSRecordSelectorNamespace contains the namespaces to match for
	// DNSRecord discovery. An empty label selector matches all namespaces.
	// A null label selector matches the current namespace only.
	DNSRecordNamespaceSelector *metav1.LabelSelector `json:"dnsRecordNamespaceSelector,omitempty"`

	// Paused when true, configures the controller to take no actions.
	Paused bool `json:"paused,omitempty"`

	// Version of pihole being deployed. The operator uses this information
	// to generate the PiHole ReplicaSet + configuration files.
	//
	// If not specified, the operator assumes the latest upstream version of
	// PiHole available at the time when the version of the operator was
	// released.
	//
	// +optional
	Version *string `json:"version,omitempty"`
}

PiHoleSpec defines the desired state of PiHole

func (*PiHoleSpec) DeepCopy

func (in *PiHoleSpec) DeepCopy() *PiHoleSpec

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

func (*PiHoleSpec) DeepCopyInto

func (in *PiHoleSpec) DeepCopyInto(out *PiHoleSpec)

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

type PiHoleSpecDNS

type PiHoleSpecDNS struct {
	UpstreamServers []string `json:"upstreamServers"`
}

PiHoleSpecDNS contains the dns settings for the pi hole instance.

func (*PiHoleSpecDNS) DeepCopy

func (in *PiHoleSpecDNS) DeepCopy() *PiHoleSpecDNS

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

func (*PiHoleSpecDNS) DeepCopyInto

func (in *PiHoleSpecDNS) DeepCopyInto(out *PiHoleSpecDNS)

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

type PiHoleStatus

type PiHoleStatus struct {
}

PiHoleStatus defines the observed state of PiHole

func (*PiHoleStatus) DeepCopy

func (in *PiHoleStatus) DeepCopy() *PiHoleStatus

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

func (*PiHoleStatus) DeepCopyInto

func (in *PiHoleStatus) DeepCopyInto(out *PiHoleStatus)

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