v1alpha1

package
v0.2.0 Latest Latest
Warning

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

Go to latest
Published: Sep 19, 2024 License: Apache-2.0 Imports: 5 Imported by: 0

Documentation

Overview

Package v1alpha1 contains API Schema definitions for the ipam v1alpha1 API group +kubebuilder:object:generate=true +groupName=ipam.cluster.x-k8s.io

Package v1alpha1 contains API Schema definitions for the ipam.cluster.x-k8s.io v1alpha1 API group +kubebuilder:object:generate=true +groupName=ipam.cluster.x-k8s.io

Index

Constants

View Source
const (
	// NutanixIPPoolKind is the kind for NutanixIPPool objects.
	NutanixIPPoolKind = "NutanixIPPool"
)

Variables

View Source
var (
	// GroupVersion is group version used to register these objects.
	GroupVersion = schema.GroupVersion{Group: ipamv1.GroupVersion.Group, 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 AdditionalTrustBundle

type AdditionalTrustBundle struct {
	// Data of the trust bundle.
	// +kubebuilder:validation:Optional
	Data []byte `json:"trustBundleData,omitempty"`

	// ConfigMapReference to the configmap holding the trust bundle data.
	// +kubebuilder:validation:Optional
	ConfigMapReference *LocalConfigMapRef `json:"trustBundleConfigMapRef,omitempty"`
}

AdditionalTrustBundle is a reference to a Nutanix trust bundle.

func (*AdditionalTrustBundle) DeepCopy

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

func (*AdditionalTrustBundle) DeepCopyInto

func (in *AdditionalTrustBundle) DeepCopyInto(out *AdditionalTrustBundle)

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

type LocalConfigMapRef

type LocalConfigMapRef struct {
	// Name is the name of the referenced configmap.
	// +kubebuilder:validation:Required
	Name string `json:"name"`
}

func (*LocalConfigMapRef) DeepCopy

func (in *LocalConfigMapRef) DeepCopy() *LocalConfigMapRef

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

func (*LocalConfigMapRef) DeepCopyInto

func (in *LocalConfigMapRef) DeepCopyInto(out *LocalConfigMapRef)

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

type LocalSecretRef

type LocalSecretRef struct {
	// Name is the name of the referenced secret.
	// +kubebuilder:validation:Required
	Name string `json:"name"`
}

func (*LocalSecretRef) DeepCopy

func (in *LocalSecretRef) DeepCopy() *LocalSecretRef

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

func (*LocalSecretRef) DeepCopyInto

func (in *LocalSecretRef) DeepCopyInto(out *LocalSecretRef)

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

type NutanixIPPool

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

	Spec   NutanixIPPoolSpec   `json:"spec,omitempty"`
	Status NutanixIPPoolStatus `json:"status,omitempty"`
}

NutanixIPPool is the Schema for the nutanixippools API.

func (*NutanixIPPool) DeepCopy

func (in *NutanixIPPool) DeepCopy() *NutanixIPPool

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

func (*NutanixIPPool) DeepCopyInto

func (in *NutanixIPPool) DeepCopyInto(out *NutanixIPPool)

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

func (*NutanixIPPool) DeepCopyObject

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

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

func (*NutanixIPPool) PoolSpec

func (p *NutanixIPPool) PoolSpec() *NutanixIPPoolSpec

PoolSpec implements the generic NutanixIPPool interface.

func (*NutanixIPPool) PoolStatus

func (p *NutanixIPPool) PoolStatus() *NutanixIPPoolStatus

PoolStatus implements the generic NutanixIPPool interface.

type NutanixIPPoolList

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

NutanixIPPoolList contains a list of NutanixIPPool.

func (*NutanixIPPoolList) DeepCopy

func (in *NutanixIPPoolList) DeepCopy() *NutanixIPPoolList

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

func (*NutanixIPPoolList) DeepCopyInto

func (in *NutanixIPPoolList) DeepCopyInto(out *NutanixIPPoolList)

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

func (*NutanixIPPoolList) DeepCopyObject

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

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

type NutanixIPPoolSpec

type NutanixIPPoolSpec struct {
	// PrismCentral is the configuration details of the Prism Central instance to use for IPAM.
	// +kubebuilder:validation:Required
	PrismCentral PrismCentral `json:"prismCentral"`

	// Subnet is the Nutanix subnet to allocate IPs from.
	// This must be either a UUID or the name of a subnet.
	// When a name is used, the Cluster field must be set to the UUID of the PE cluster to use
	// in order to resolve the name to a UUID.
	// +kubebuilder:validation:Required
	Subnet string `json:"subnet"`

	// Cluster is the Nutanix PE cluster to use to resolve the Subnet name to a UUID.
	// Cluster can either be the name or the UUID of the PE cluster.
	// This field is only required when Subnet is a name rather than a UUID.
	// +kubebuilder:validation:Optional
	Cluster *string `json:"cluster,omitempty"`
}

NutanixIPPoolSpec defines the desired state of NutanixIPPool. +kubebuilder:validation:XValidation:message="cluster is required if subnet is not a valid uuid",rule="self.subnet.lowerAscii().matches('^[0-9a-f]{8}-?[0-9a-f]{4}-?[0-9a-f]{4}-?[0-9a-f]{4}-?[0-9a-f]{12}$') || (has(self.cluster) && self.cluster.size() > 0)"

func (*NutanixIPPoolSpec) DeepCopy

func (in *NutanixIPPoolSpec) DeepCopy() *NutanixIPPoolSpec

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

func (*NutanixIPPoolSpec) DeepCopyInto

func (in *NutanixIPPoolSpec) DeepCopyInto(out *NutanixIPPoolSpec)

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

type NutanixIPPoolStatus

type NutanixIPPoolStatus struct{}

NutanixIPPoolStatus defines the observed state of NutanixIPPool.

func (*NutanixIPPoolStatus) DeepCopy

func (in *NutanixIPPoolStatus) DeepCopy() *NutanixIPPoolStatus

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

func (*NutanixIPPoolStatus) DeepCopyInto

func (in *NutanixIPPoolStatus) DeepCopyInto(out *NutanixIPPoolStatus)

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

type PrismCentral

type PrismCentral struct {
	// Address is the address of the Prism Central instance to use for IPAM.
	// Address can either be the IP address or the DNS name of the Prism Central instance, omitting
	// the protocol and port.
	// +kubebuilder:validation:Required
	Address string `json:"address"`

	// Port is the port of the Prism Central instance to use for IPAM.
	// +kubebuilder:validation:Minimum=1
	// +kubebuilder:validation:Maximum=65535
	// +kubebuilder:validation:Required
	// +kubebuilder:default=9440
	Port uint16 `json:"port"`

	// CredentialsSecretRef is the reference to the secret containing the credentials to use to connect
	// the specified Prism Central.
	// +kubebuilder:validation:Required
	CredentialsSecretRef LocalSecretRef `json:"credentialsSecretRef"`

	// use insecure connection to Prism endpoint
	// +kubebuilder:default=false
	// +kubebuilder:validation:Optional
	Insecure bool `json:"insecure,omitempty"`

	// AdditionalTrustBundle is a PEM encoded x509 cert for the RootCA that was used to create the certificate
	// for a Prism Central that uses certificates that were issued by a non-publicly trusted RootCA. The trust
	// bundle is added to the cert pool used to authenticate the TLS connection to the Prism Central.
	// +kubebuilder:validation:Optional
	AdditionalTrustBundle *AdditionalTrustBundle `json:"additionalTrustBundle,omitempty"`
}

func (*PrismCentral) DeepCopy

func (in *PrismCentral) DeepCopy() *PrismCentral

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

func (*PrismCentral) DeepCopyInto

func (in *PrismCentral) DeepCopyInto(out *PrismCentral)

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