v1alpha1

package
v0.1.0-alpha.2 Latest Latest
Warning

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

Go to latest
Published: Mar 31, 2022 License: Apache-2.0 Imports: 12 Imported by: 0

Documentation

Overview

Package v1alpha1 contains the v1alpha1 group Compute Engine resources of the IONOS Cloud provider. +kubebuilder:object:generate=true +groupName=compute.ionoscloud.crossplane.io +versionName=v1alpha1

Index

Constants

View Source
const (
	Group   = "compute.ionoscloud.crossplane.io"
	Version = "v1alpha1"
)

Package type metadata.

Variables

View Source
var (
	DatacenterKind             = reflect.TypeOf(Datacenter{}).Name()
	DatacenterGroupKind        = schema.GroupKind{Group: Group, Kind: DatacenterKind}.String()
	DatacenterKindAPIVersion   = DatacenterKind + "." + SchemeGroupVersion.String()
	DatacenterGroupVersionKind = SchemeGroupVersion.WithKind(DatacenterKind)
)

Datacenter type metadata.

View Source
var (
	FirewallRuleKind             = reflect.TypeOf(FirewallRule{}).Name()
	FirewallRuleGroupKind        = schema.GroupKind{Group: Group, Kind: FirewallRuleKind}.String()
	FirewallRuleKindAPIVersion   = FirewallRuleKind + "." + SchemeGroupVersion.String()
	FirewallRuleGroupVersionKind = SchemeGroupVersion.WithKind(FirewallRuleKind)
)

FirewallRule type metadata.

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 (
	IPBlockKind             = reflect.TypeOf(IPBlock{}).Name()
	IPBlockGroupKind        = schema.GroupKind{Group: Group, Kind: IPBlockKind}.String()
	IPBlockKindAPIVersion   = IPBlockKind + "." + SchemeGroupVersion.String()
	IPBlockGroupVersionKind = SchemeGroupVersion.WithKind(IPBlockKind)
)

IPBlock type metadata.

View Source
var (
	IPFailoverKind             = reflect.TypeOf(IPFailover{}).Name()
	IPFailoverGroupKind        = schema.GroupKind{Group: Group, Kind: IPFailoverKind}.String()
	IPFailoverKindAPIVersion   = IPFailoverKind + "." + SchemeGroupVersion.String()
	IPFailoverGroupVersionKind = SchemeGroupVersion.WithKind(IPFailoverKind)
)

IPFailover type metadata.

View Source
var (
	LanKind             = reflect.TypeOf(Lan{}).Name()
	LanGroupKind        = schema.GroupKind{Group: Group, Kind: LanKind}.String()
	LanKindAPIVersion   = LanKind + "." + SchemeGroupVersion.String()
	LanGroupVersionKind = SchemeGroupVersion.WithKind(LanKind)
)

Lan type metadata.

View Source
var (
	NicKind             = reflect.TypeOf(Nic{}).Name()
	NicGroupKind        = schema.GroupKind{Group: Group, Kind: NicKind}.String()
	NicKindAPIVersion   = NicKind + "." + SchemeGroupVersion.String()
	NicGroupVersionKind = SchemeGroupVersion.WithKind(NicKind)
)

Nic type metadata.

View Source
var (
	CubeServerKind             = reflect.TypeOf(CubeServer{}).Name()
	CubeServerGroupKind        = schema.GroupKind{Group: Group, Kind: CubeServerKind}.String()
	CubeServerKindAPIVersion   = CubeServerKind + "." + SchemeGroupVersion.String()
	CubeServerGroupVersionKind = SchemeGroupVersion.WithKind(CubeServerKind)
)

CubeServer type metadata.

View Source
var (
	ServerKind             = reflect.TypeOf(Server{}).Name()
	ServerGroupKind        = schema.GroupKind{Group: Group, Kind: ServerKind}.String()
	ServerKindAPIVersion   = ServerKind + "." + SchemeGroupVersion.String()
	ServerGroupVersionKind = SchemeGroupVersion.WithKind(ServerKind)
)

Server type metadata.

View Source
var (
	VolumeKind             = reflect.TypeOf(Volume{}).Name()
	VolumeGroupKind        = schema.GroupKind{Group: Group, Kind: VolumeKind}.String()
	VolumeKindAPIVersion   = VolumeKind + "." + SchemeGroupVersion.String()
	VolumeGroupVersionKind = SchemeGroupVersion.WithKind(VolumeKind)
)

Volume type metadata.

Functions

func ExtractDatacenterID

func ExtractDatacenterID() reference.ExtractValueFn

ExtractDatacenterID returns the externalName of a referenced Datacenter.

func ExtractLanID

func ExtractLanID() reference.ExtractValueFn

ExtractLanID returns the externalName of a referenced Lan.

func ExtractNicID

func ExtractNicID() reference.ExtractValueFn

ExtractNicID returns the externalName of a referenced Nic.

func ExtractServerID

func ExtractServerID() reference.ExtractValueFn

ExtractServerID returns the externalName of a referenced Server.

func ExtractVolumeID

func ExtractVolumeID() reference.ExtractValueFn

ExtractVolumeID returns the externalName of a referenced Volume.

Types

type CubeServer

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

	Spec   CubeServerSpec `json:"spec"`
	Status ServerStatus   `json:"status,omitempty"`
}

A CubeServer is an example API type. +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="DATACENTER ID",type="string",JSONPath=".spec.forProvider.datacenterConfig.datacenterId" +kubebuilder:printcolumn:name="SERVER ID",type="string",JSONPath=".metadata.annotations.crossplane\\.io/external-name" +kubebuilder:printcolumn:name="VOLUME ID",priority=1,type="string",JSONPath=".status.atProvider.volumeId" +kubebuilder:printcolumn:name="STATE",type="string",JSONPath=".status.atProvider.state" +kubebuilder:printcolumn:name="AGE",type="date",JSONPath=".metadata.creationTimestamp" +kubebuilder:subresource:status +kubebuilder:resource:scope=Cluster,categories={crossplane,managed,ionoscloud}

func (*CubeServer) DeepCopy

func (in *CubeServer) DeepCopy() *CubeServer

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

func (*CubeServer) DeepCopyInto

func (in *CubeServer) DeepCopyInto(out *CubeServer)

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

func (*CubeServer) DeepCopyObject

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

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

func (*CubeServer) GetCondition

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

GetCondition of this CubeServer.

func (*CubeServer) GetDeletionPolicy

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

GetDeletionPolicy of this CubeServer.

func (*CubeServer) GetProviderConfigReference

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

GetProviderConfigReference of this CubeServer.

func (*CubeServer) GetProviderReference

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

GetProviderReference of this CubeServer. Deprecated: Use GetProviderConfigReference.

func (*CubeServer) GetWriteConnectionSecretToReference

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

GetWriteConnectionSecretToReference of this CubeServer.

func (*CubeServer) ResolveReferences

func (mg *CubeServer) ResolveReferences(ctx context.Context, c client.Reader) error

ResolveReferences of this CubeServer.

func (*CubeServer) SetConditions

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

SetConditions of this CubeServer.

func (*CubeServer) SetDeletionPolicy

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

SetDeletionPolicy of this CubeServer.

func (*CubeServer) SetProviderConfigReference

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

SetProviderConfigReference of this CubeServer.

func (*CubeServer) SetProviderReference

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

SetProviderReference of this CubeServer. Deprecated: Use SetProviderConfigReference.

func (*CubeServer) SetWriteConnectionSecretToReference

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

SetWriteConnectionSecretToReference of this CubeServer.

type CubeServerList

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

CubeServerList contains a list of Server

func (*CubeServerList) DeepCopy

func (in *CubeServerList) DeepCopy() *CubeServerList

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

func (*CubeServerList) DeepCopyInto

func (in *CubeServerList) DeepCopyInto(out *CubeServerList)

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

func (*CubeServerList) DeepCopyObject

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

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

func (*CubeServerList) GetItems

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

GetItems of this CubeServerList.

type CubeServerProperties

type CubeServerProperties struct {
	// DatacenterConfig contains information about the datacenter resource
	// on which the server will be created
	//
	// +immutable
	// +kubebuilder:validation:Required
	DatacenterCfg DatacenterConfig `json:"datacenterConfig"`
	// The ID or the name of the template for creating a CUBE server.
	//
	// +immutable
	// +kubebuilder:validation:Required
	Template Template `json:"template"`
	// The name of the  resource.
	Name string `json:"name,omitempty"`
	// The availability zone in which the server should be provisioned.
	//
	// +kubebuilder:validation:Enum=AUTO;ZONE_1;ZONE_2
	// +kubebuilder:default=AUTO
	AvailabilityZone string `json:"availabilityZone,omitempty"`
	// CPU architecture on which server gets provisioned; not all CPU architectures are available in all datacenter regions;
	// available CPU architectures can be retrieved from the datacenter resource.
	//
	// +kubebuilder:validation:Enum=AMD_OPTERON;INTEL_SKYLAKE;INTEL_XEON
	CPUFamily string `json:"cpuFamily,omitempty"`
	// DasVolumeProperties contains properties for the DAS volume attached to the Cube Server
	//
	// +kubebuilder:validation:Required
	DasVolumeProperties DasVolumeProperties `json:"volume"`
}

CubeServerProperties are the observable fields of a Cube Server. Required values when creating a CubeServer: Datacenter ID or Reference, Template ID or Name, Volume Properties (Name, Bus, Licence Type or Image/Image Alias).

func (*CubeServerProperties) DeepCopy

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

func (*CubeServerProperties) DeepCopyInto

func (in *CubeServerProperties) DeepCopyInto(out *CubeServerProperties)

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

type CubeServerSpec

type CubeServerSpec struct {
	xpv1.ResourceSpec `json:",inline"`
	ForProvider       CubeServerProperties `json:"forProvider"`
}

A CubeServerSpec defines the desired state of a Cube Server.

func (*CubeServerSpec) DeepCopy

func (in *CubeServerSpec) DeepCopy() *CubeServerSpec

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

func (*CubeServerSpec) DeepCopyInto

func (in *CubeServerSpec) DeepCopyInto(out *CubeServerSpec)

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

type DasVolumeProperties

type DasVolumeProperties struct {
	// The name of the DAS Volume.
	//
	// +kubebuilder:validation:Required
	Name string `json:"name"`
	// The bus type of the volume.
	//
	// +kubebuilder:validation:Enum=VIRTIO;IDE;UNKNOWN
	// +kubebuilder:validation:Required
	Bus string `json:"bus"`
	// Image or snapshot ID to be used as template for this volume.
	// Make sure the image selected is compatible with the datacenter's location.
	// Note: when creating a volume, set image, image alias, or licence type
	//
	// +immutable
	Image string `json:"image,omitempty"`
	// Initial password to be set for installed OS. Works with public images only. Not modifiable, forbidden in update requests.
	// Password rules allows all characters from a-z, A-Z, 0-9.
	//
	// +immutable
	ImagePassword string `json:"imagePassword,omitempty"`
	// +immutable
	// Note: when creating a volume, set image, image alias, or licence type
	ImageAlias string `json:"imageAlias,omitempty"`
	// Public SSH keys are set on the image as authorized keys for appropriate SSH login to the instance using the corresponding private key.
	// This field may only be set in creation requests. When reading, it always returns null.
	// SSH keys are only supported if a public Linux image is used for the volume creation.
	//
	// +immutable
	SSHKeys []string `json:"sshKeys,omitempty"`
	// OS type for this volume.
	// Note: when creating a volume, set image, image alias, or licence type
	//
	// +immutable
	// +kubebuilder:validation:Enum=UNKNOWN;WINDOWS;WINDOWS2016;WINDOWS2022;LINUX;OTHER
	LicenceType string `json:"licenceType,omitempty"`
}

DasVolumeProperties are the observable fields of a Cube Server's DAS Volume. Required values when creating a DAS Volume: Name, Bus, Licence Type or Image/Image Alias. If using Image or Image Alias, you may want to provide also an Image Password or SSH Keys.

func (*DasVolumeProperties) DeepCopy

func (in *DasVolumeProperties) DeepCopy() *DasVolumeProperties

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

func (*DasVolumeProperties) DeepCopyInto

func (in *DasVolumeProperties) DeepCopyInto(out *DasVolumeProperties)

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

type Datacenter

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

	Spec   DatacenterSpec   `json:"spec"`
	Status DatacenterStatus `json:"status,omitempty"`
}

A Datacenter is an example API type. +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="DATACENTER ID",type="string",JSONPath=".metadata.annotations.crossplane\\.io/external-name" +kubebuilder:printcolumn:name="DATACENTER NAME",priority=1,type="string",JSONPath=".spec.forProvider.name" +kubebuilder:printcolumn:name="LOCATION",priority=1,type="string",JSONPath=".spec.forProvider.location" +kubebuilder:printcolumn:name="STATE",type="string",JSONPath=".status.atProvider.state" +kubebuilder:printcolumn:name="AGE",type="date",JSONPath=".metadata.creationTimestamp" +kubebuilder:subresource:status +kubebuilder:resource:scope=Cluster,categories={crossplane,managed,ionoscloud}

func (*Datacenter) DeepCopy

func (in *Datacenter) DeepCopy() *Datacenter

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

func (*Datacenter) DeepCopyInto

func (in *Datacenter) DeepCopyInto(out *Datacenter)

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

func (*Datacenter) DeepCopyObject

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

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

func (*Datacenter) GetCondition

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

GetCondition of this Datacenter.

func (*Datacenter) GetDeletionPolicy

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

GetDeletionPolicy of this Datacenter.

func (*Datacenter) GetProviderConfigReference

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

GetProviderConfigReference of this Datacenter.

func (*Datacenter) GetProviderReference

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

GetProviderReference of this Datacenter. Deprecated: Use GetProviderConfigReference.

func (*Datacenter) GetWriteConnectionSecretToReference

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

GetWriteConnectionSecretToReference of this Datacenter.

func (*Datacenter) SetConditions

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

SetConditions of this Datacenter.

func (*Datacenter) SetDeletionPolicy

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

SetDeletionPolicy of this Datacenter.

func (*Datacenter) SetProviderConfigReference

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

SetProviderConfigReference of this Datacenter.

func (*Datacenter) SetProviderReference

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

SetProviderReference of this Datacenter. Deprecated: Use SetProviderConfigReference.

func (*Datacenter) SetWriteConnectionSecretToReference

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

SetWriteConnectionSecretToReference of this Datacenter.

type DatacenterConfig

type DatacenterConfig struct {
	// DatacenterID is the ID of the Datacenter on which the resource will be created.
	// It needs to be provided via directly or via reference.
	//
	// +immutable
	// +kubebuilder:validation:Format=uuid
	// +crossplane:generate:reference:type=Datacenter
	// +crossplane:generate:reference:extractor=ExtractDatacenterID()
	DatacenterID string `json:"datacenterId,omitempty"`
	// DatacenterIDRef references to a Datacenter to retrieve its ID
	//
	// +optional
	// +immutable
	DatacenterIDRef *xpv1.Reference `json:"datacenterIdRef,omitempty"`
	// DatacenterIDSelector selects reference to a Datacenter to retrieve its datacenterId
	//
	// +optional
	DatacenterIDSelector *xpv1.Selector `json:"datacenterIdSelector,omitempty"`
}

DatacenterConfig is used by resources that need to link datacenters via id or via reference.

func (*DatacenterConfig) DeepCopy

func (in *DatacenterConfig) DeepCopy() *DatacenterConfig

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

func (*DatacenterConfig) DeepCopyInto

func (in *DatacenterConfig) DeepCopyInto(out *DatacenterConfig)

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

type DatacenterList

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

DatacenterList contains a list of Datacenter

func (*DatacenterList) DeepCopy

func (in *DatacenterList) DeepCopy() *DatacenterList

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

func (*DatacenterList) DeepCopyInto

func (in *DatacenterList) DeepCopyInto(out *DatacenterList)

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

func (*DatacenterList) DeepCopyObject

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

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

func (*DatacenterList) GetItems

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

GetItems of this DatacenterList.

type DatacenterObservation

type DatacenterObservation struct {
	DatacenterID         string   `json:"datacenterId,omitempty"`
	State                string   `json:"state,omitempty"`
	AvailableCPUFamilies []string `json:"availableCpuFamilies,omitempty"`
}

DatacenterObservation are the observable fields of a Datacenter.

func (*DatacenterObservation) DeepCopy

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

func (*DatacenterObservation) DeepCopyInto

func (in *DatacenterObservation) DeepCopyInto(out *DatacenterObservation)

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

type DatacenterParameters

type DatacenterParameters struct {
	// The name of the  resource.
	Name string `json:"name,omitempty"`
	// A description for the datacenter, such as staging, production.
	Description string `json:"description,omitempty"`
	// The physical location where the datacenter will be created. This will be where all of your servers live.
	// Property cannot be modified after datacenter creation (disallowed in update requests).
	//
	// +immutable
	// +kubebuilder:validation:Enum=de/fra;us/las;us/ewr;de/txl;gb/lhr;es/vit
	// +kubebuilder:validation:Required
	Location string `json:"location"`
	// Boolean value representing if the data center requires extra protection, such as two-step verification.
	SecAuthProtection bool `json:"secAuthProtection,omitempty"`
}

DatacenterParameters are the observable fields of a Datacenter. Required values when creating a Datacenter: Location.

func (*DatacenterParameters) DeepCopy

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

func (*DatacenterParameters) DeepCopyInto

func (in *DatacenterParameters) DeepCopyInto(out *DatacenterParameters)

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

type DatacenterSpec

type DatacenterSpec struct {
	xpv1.ResourceSpec `json:",inline"`
	ForProvider       DatacenterParameters `json:"forProvider"`
}

A DatacenterSpec defines the desired state of a Datacenter.

func (*DatacenterSpec) DeepCopy

func (in *DatacenterSpec) DeepCopy() *DatacenterSpec

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

func (*DatacenterSpec) DeepCopyInto

func (in *DatacenterSpec) DeepCopyInto(out *DatacenterSpec)

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

type DatacenterStatus

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

A DatacenterStatus represents the observed state of a Datacenter.

func (*DatacenterStatus) DeepCopy

func (in *DatacenterStatus) DeepCopy() *DatacenterStatus

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

func (*DatacenterStatus) DeepCopyInto

func (in *DatacenterStatus) DeepCopyInto(out *DatacenterStatus)

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

type FirewallRule

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

	Spec   FirewallRuleSpec   `json:"spec"`
	Status FirewallRuleStatus `json:"status,omitempty"`
}

A FirewallRule is an example API type. +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="DATACENTER ID",priority=1,type="string",JSONPath=".spec.forProvider.datacenterConfig.datacenterId" +kubebuilder:printcolumn:name="SERVER ID",priority=1,type="string",JSONPath=".spec.forProvider.serverConfig.serverId" +kubebuilder:printcolumn:name="NIC ID",type="string",JSONPath=".spec.forProvider.nicConfig.nicId" +kubebuilder:printcolumn:name="FIREWALL RULE ID",type="string",JSONPath=".metadata.annotations.crossplane\\.io/external-name" +kubebuilder:printcolumn:name="STATE",type="string",JSONPath=".status.atProvider.state" +kubebuilder:printcolumn:name="AGE",type="date",JSONPath=".metadata.creationTimestamp" +kubebuilder:subresource:status +kubebuilder:resource:scope=Cluster,categories={crossplane,managed,ionoscloud}

func (*FirewallRule) DeepCopy

func (in *FirewallRule) DeepCopy() *FirewallRule

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

func (*FirewallRule) DeepCopyInto

func (in *FirewallRule) DeepCopyInto(out *FirewallRule)

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

func (*FirewallRule) DeepCopyObject

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

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

func (*FirewallRule) GetCondition

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

GetCondition of this FirewallRule.

func (*FirewallRule) GetDeletionPolicy

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

GetDeletionPolicy of this FirewallRule.

func (*FirewallRule) GetProviderConfigReference

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

GetProviderConfigReference of this FirewallRule.

func (*FirewallRule) GetProviderReference

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

GetProviderReference of this FirewallRule. Deprecated: Use GetProviderConfigReference.

func (*FirewallRule) GetWriteConnectionSecretToReference

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

GetWriteConnectionSecretToReference of this FirewallRule.

func (*FirewallRule) ResolveReferences

func (mg *FirewallRule) ResolveReferences(ctx context.Context, c client.Reader) error

ResolveReferences of this FirewallRule.

func (*FirewallRule) SetConditions

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

SetConditions of this FirewallRule.

func (*FirewallRule) SetDeletionPolicy

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

SetDeletionPolicy of this FirewallRule.

func (*FirewallRule) SetProviderConfigReference

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

SetProviderConfigReference of this FirewallRule.

func (*FirewallRule) SetProviderReference

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

SetProviderReference of this FirewallRule. Deprecated: Use SetProviderConfigReference.

func (*FirewallRule) SetWriteConnectionSecretToReference

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

SetWriteConnectionSecretToReference of this FirewallRule.

type FirewallRuleConfig

type FirewallRuleConfig struct {
	// FirewallRuleID is the ID of the FirewallRule on which the resource will be created.
	// It needs to be provided via directly or via reference.
	//
	// +immutable
	// +kubebuilder:validation:Format=uuid
	// +crossplane:generate:reference:type=FirewallRule
	// +crossplane:generate:reference:extractor=ExtractFirewallRuleID()
	FirewallRuleID string `json:"firewallRuleId,omitempty"`
	// FirewallRuleIDRef references to a FirewallRule to retrieve its ID
	//
	// +optional
	// +immutable
	FirewallRuleIDRef *xpv1.Reference `json:"firewallRuleIdRef,omitempty"`
	// FirewallRuleIDSelector selects reference to a FirewallRule to retrieve its firewallRuleId
	//
	// +optional
	FirewallRuleIDSelector *xpv1.Selector `json:"firewallRuleIdSelector,omitempty"`
}

FirewallRuleConfig is used by resources that need to link firewallRules via id or via reference.

func (*FirewallRuleConfig) DeepCopy

func (in *FirewallRuleConfig) DeepCopy() *FirewallRuleConfig

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

func (*FirewallRuleConfig) DeepCopyInto

func (in *FirewallRuleConfig) DeepCopyInto(out *FirewallRuleConfig)

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

type FirewallRuleList

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

FirewallRuleList contains a list of FirewallRule

func (*FirewallRuleList) DeepCopy

func (in *FirewallRuleList) DeepCopy() *FirewallRuleList

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

func (*FirewallRuleList) DeepCopyInto

func (in *FirewallRuleList) DeepCopyInto(out *FirewallRuleList)

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

func (*FirewallRuleList) DeepCopyObject

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

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

func (*FirewallRuleList) GetItems

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

GetItems of this FirewallRuleList.

type FirewallRuleObservation

type FirewallRuleObservation struct {
	FirewallRuleID string `json:"firewallRuleId,omitempty"`
	State          string `json:"state,omitempty"`
}

FirewallRuleObservation are the observable fields of a FirewallRule.

func (*FirewallRuleObservation) DeepCopy

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

func (*FirewallRuleObservation) DeepCopyInto

func (in *FirewallRuleObservation) DeepCopyInto(out *FirewallRuleObservation)

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

type FirewallRuleParameters

type FirewallRuleParameters struct {
	// DatacenterConfig contains information about the datacenter resource
	// on which the resource will be created
	//
	// +kubebuilder:validation:Required
	DatacenterCfg DatacenterConfig `json:"datacenterConfig"`
	// ServerConfig contains information about the server resource
	// on which the resource will be created
	//
	// +kubebuilder:validation:Required
	ServerCfg ServerConfig `json:"serverConfig"`
	// NicConfig contains information about the nic resource
	// on which the resource will be created
	//
	// +kubebuilder:validation:Required
	NicCfg NicConfig `json:"nicConfig"`
	// The name of the  resource.
	Name string `json:"name,omitempty"`
	// The protocol for the rule. Property cannot be modified after it is created (disallowed in update requests).
	//
	// +immutable
	// +kubebuilder:validation:Required
	// +kubebuilder:validation:Enum=TCP;UDP;ICMP;ANY
	Protocol string `json:"protocol"`
	// Only traffic originating from the respective MAC address is allowed.
	// Valid format: aa:bb:cc:dd:ee:ff. Value null allows traffic from any MAC address.
	//
	// +kubebuilder:validation:Pattern="^([0-9A-Fa-f]{2}[:-]){5}([0-9A-Fa-f]{2})$"
	SourceMac string `json:"sourceMac,omitempty"`
	// Only traffic originating from the respective IPv4 address is allowed.
	// Value null allows traffic from any IP address.
	//
	// +kubebuilder:validation:Pattern="^(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?).){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)$"
	SourceIP string `json:"sourceIp,omitempty"`
	// If the target NIC has multiple IP addresses, only the traffic directed to the respective IP address of the NIC is allowed.
	// Value null allows traffic to any target IP address.
	//
	// +kubebuilder:validation:Pattern="^(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?).){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)$"
	TargetIP string `json:"targetIp,omitempty"`
	// Defines the allowed code (from 0 to 254) if protocol ICMP is chosen. Value null allows all codes.
	//
	// +kubebuilder:validation:Minimum=0
	// +kubebuilder:validation:Maximum=254
	IcmpCode int32 `json:"icmpCode,omitempty"`
	// Defines the allowed type (from 0 to 254) if the protocol ICMP is chosen. Value null allows all types.
	//
	// +kubebuilder:validation:Minimum=0
	// +kubebuilder:validation:Maximum=254
	IcmpType int32 `json:"icmpType,omitempty"`
	// Defines the start range of the allowed port (from 1 to 65534) if protocol TCP or UDP is chosen.
	// Leave portRangeStart and portRangeEnd value null to allow all ports.
	//
	// +kubebuilder:validation:Minimum=1
	// +kubebuilder:validation:Maximum=65534
	PortRangeStart int32 `json:"portRangeStart,omitempty"`
	// Defines the end range of the allowed port (from 1 to 65534) if the protocol TCP or UDP is chosen.
	// Leave portRangeStart and portRangeEnd null to allow all ports.
	//
	// +kubebuilder:validation:Minimum=1
	// +kubebuilder:validation:Maximum=65534
	PortRangeEnd int32 `json:"portRangeEnd,omitempty"`
	// The type of the firewall rule. If not specified, the default INGRESS value is used.
	//
	// +kubebuilder:validation:Enum=INGRESS;EGRESS
	// +kubebuilder:validation:default=INGRESS
	Type string `json:"type,omitempty"`
}

FirewallRuleParameters are the observable fields of a FirewallRule. Required values when creating a FirewallRule: DatacenterConfig, ServerConfig, NicConfig, Protocol.

func (*FirewallRuleParameters) DeepCopy

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

func (*FirewallRuleParameters) DeepCopyInto

func (in *FirewallRuleParameters) DeepCopyInto(out *FirewallRuleParameters)

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

type FirewallRuleSpec

type FirewallRuleSpec struct {
	xpv1.ResourceSpec `json:",inline"`
	ForProvider       FirewallRuleParameters `json:"forProvider"`
}

A FirewallRuleSpec defines the desired state of a FirewallRule.

func (*FirewallRuleSpec) DeepCopy

func (in *FirewallRuleSpec) DeepCopy() *FirewallRuleSpec

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

func (*FirewallRuleSpec) DeepCopyInto

func (in *FirewallRuleSpec) DeepCopyInto(out *FirewallRuleSpec)

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

type FirewallRuleStatus

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

A FirewallRuleStatus represents the observed state of a FirewallRule.

func (*FirewallRuleStatus) DeepCopy

func (in *FirewallRuleStatus) DeepCopy() *FirewallRuleStatus

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

func (*FirewallRuleStatus) DeepCopyInto

func (in *FirewallRuleStatus) DeepCopyInto(out *FirewallRuleStatus)

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

type IPBlock

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

	Spec   IPBlockSpec   `json:"spec"`
	Status IPBlockStatus `json:"status,omitempty"`
}

A IPBlock is an example API type. +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="IPBLOCK ID",type="string",JSONPath=".metadata.annotations.crossplane\\.io/external-name" +kubebuilder:printcolumn:name="IPS",type="string",JSONPath=".status.atProvider.ips" +kubebuilder:printcolumn:name="NAME",priority=1,type="string",JSONPath=".spec.forProvider.name" +kubebuilder:printcolumn:name="LOCATION",priority=1,type="string",JSONPath=".spec.forProvider.location" +kubebuilder:printcolumn:name="STATE",type="string",JSONPath=".status.atProvider.state" +kubebuilder:printcolumn:name="AGE",type="date",JSONPath=".metadata.creationTimestamp" +kubebuilder:subresource:status +kubebuilder:resource:scope=Cluster,categories={crossplane,managed,ionoscloud}

func (*IPBlock) DeepCopy

func (in *IPBlock) DeepCopy() *IPBlock

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

func (*IPBlock) DeepCopyInto

func (in *IPBlock) DeepCopyInto(out *IPBlock)

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

func (*IPBlock) DeepCopyObject

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

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

func (*IPBlock) GetCondition

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

GetCondition of this IPBlock.

func (*IPBlock) GetDeletionPolicy

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

GetDeletionPolicy of this IPBlock.

func (*IPBlock) GetProviderConfigReference

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

GetProviderConfigReference of this IPBlock.

func (*IPBlock) GetProviderReference

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

GetProviderReference of this IPBlock. Deprecated: Use GetProviderConfigReference.

func (*IPBlock) GetWriteConnectionSecretToReference

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

GetWriteConnectionSecretToReference of this IPBlock.

func (*IPBlock) SetConditions

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

SetConditions of this IPBlock.

func (*IPBlock) SetDeletionPolicy

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

SetDeletionPolicy of this IPBlock.

func (*IPBlock) SetProviderConfigReference

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

SetProviderConfigReference of this IPBlock.

func (*IPBlock) SetProviderReference

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

SetProviderReference of this IPBlock. Deprecated: Use SetProviderConfigReference.

func (*IPBlock) SetWriteConnectionSecretToReference

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

SetWriteConnectionSecretToReference of this IPBlock.

type IPBlockList

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

IPBlockList contains a list of IPBlock

func (*IPBlockList) DeepCopy

func (in *IPBlockList) DeepCopy() *IPBlockList

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

func (*IPBlockList) DeepCopyInto

func (in *IPBlockList) DeepCopyInto(out *IPBlockList)

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

func (*IPBlockList) DeepCopyObject

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

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

func (*IPBlockList) GetItems

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

GetItems of this IPBlockList.

type IPBlockObservation

type IPBlockObservation struct {
	IPBlockID string   `json:"ipBlockId,omitempty"`
	State     string   `json:"state,omitempty"`
	Ips       []string `json:"ips,omitempty"`
}

IPBlockObservation are the observable fields of a IPBlock.

func (*IPBlockObservation) DeepCopy

func (in *IPBlockObservation) DeepCopy() *IPBlockObservation

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

func (*IPBlockObservation) DeepCopyInto

func (in *IPBlockObservation) DeepCopyInto(out *IPBlockObservation)

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

type IPBlockParameters

type IPBlockParameters struct {
	// The name of the  resource.
	Name string `json:"name,omitempty"`
	// Location of that IP block. Property cannot be modified after it is created (disallowed in update requests).
	//
	// +immutable
	// +kubebuilder:validation:Enum=de/fra;us/las;us/ewr;de/txl;gb/lhr;es/vit
	// +kubebuilder:validation:Required
	Location string `json:"location"`
	// The size of the IP block.
	//
	// +immutable
	// +kubebuilder:validation:Required
	Size int32 `json:"size"`
}

IPBlockParameters are the observable fields of a IPBlock. Required values when creating an IPBlock: Location, Size.

func (*IPBlockParameters) DeepCopy

func (in *IPBlockParameters) DeepCopy() *IPBlockParameters

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

func (*IPBlockParameters) DeepCopyInto

func (in *IPBlockParameters) DeepCopyInto(out *IPBlockParameters)

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

type IPBlockSpec

type IPBlockSpec struct {
	xpv1.ResourceSpec `json:",inline"`
	ForProvider       IPBlockParameters `json:"forProvider"`
}

A IPBlockSpec defines the desired state of a IPBlock.

func (*IPBlockSpec) DeepCopy

func (in *IPBlockSpec) DeepCopy() *IPBlockSpec

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

func (*IPBlockSpec) DeepCopyInto

func (in *IPBlockSpec) DeepCopyInto(out *IPBlockSpec)

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

type IPBlockStatus

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

A IPBlockStatus represents the observed state of a IPBlock.

func (*IPBlockStatus) DeepCopy

func (in *IPBlockStatus) DeepCopy() *IPBlockStatus

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

func (*IPBlockStatus) DeepCopyInto

func (in *IPBlockStatus) DeepCopyInto(out *IPBlockStatus)

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

type IPFailover

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

	Spec   IPFailoverSpec   `json:"spec"`
	Status IPFailoverStatus `json:"status,omitempty"`
}

A IPFailover is an example API type. +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="DATACENTER ID",type="string",JSONPath=".spec.forProvider.datacenterConfig.datacenterId" +kubebuilder:printcolumn:name="LAN ID",type="string",JSONPath=".spec.forProvider.lanConfig.lanId" +kubebuilder:printcolumn:name="NIC ID",type="string",JSONPath=".spec.forProvider.nicConfig.nicId" +kubebuilder:printcolumn:name="IP",type="string",JSONPath=".status.atProvider.ip" +kubebuilder:printcolumn:name="LAN STATE",type="string",JSONPath=".status.atProvider.state" +kubebuilder:printcolumn:name="AGE",type="date",JSONPath=".metadata.creationTimestamp" +kubebuilder:subresource:status +kubebuilder:resource:scope=Cluster,categories={crossplane,managed,ionoscloud}

func (*IPFailover) DeepCopy

func (in *IPFailover) DeepCopy() *IPFailover

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

func (*IPFailover) DeepCopyInto

func (in *IPFailover) DeepCopyInto(out *IPFailover)

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

func (*IPFailover) DeepCopyObject

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

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

func (*IPFailover) GetCondition

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

GetCondition of this IPFailover.

func (*IPFailover) GetDeletionPolicy

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

GetDeletionPolicy of this IPFailover.

func (*IPFailover) GetProviderConfigReference

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

GetProviderConfigReference of this IPFailover.

func (*IPFailover) GetProviderReference

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

GetProviderReference of this IPFailover. Deprecated: Use GetProviderConfigReference.

func (*IPFailover) GetWriteConnectionSecretToReference

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

GetWriteConnectionSecretToReference of this IPFailover.

func (*IPFailover) ResolveReferences

func (mg *IPFailover) ResolveReferences(ctx context.Context, c client.Reader) error

ResolveReferences of this IPFailover.

func (*IPFailover) SetConditions

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

SetConditions of this IPFailover.

func (*IPFailover) SetDeletionPolicy

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

SetDeletionPolicy of this IPFailover.

func (*IPFailover) SetProviderConfigReference

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

SetProviderConfigReference of this IPFailover.

func (*IPFailover) SetProviderReference

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

SetProviderReference of this IPFailover. Deprecated: Use SetProviderConfigReference.

func (*IPFailover) SetWriteConnectionSecretToReference

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

SetWriteConnectionSecretToReference of this IPFailover.

type IPFailoverList

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

IPFailoverList contains a list of IPFailover

func (*IPFailoverList) DeepCopy

func (in *IPFailoverList) DeepCopy() *IPFailoverList

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

func (*IPFailoverList) DeepCopyInto

func (in *IPFailoverList) DeepCopyInto(out *IPFailoverList)

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

func (*IPFailoverList) DeepCopyObject

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

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

func (*IPFailoverList) GetItems

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

GetItems of this IPFailoverList.

type IPFailoverObservation

type IPFailoverObservation struct {
	IP    string `json:"ip,omitempty"`
	State string `json:"state,omitempty"`
}

IPFailoverObservation are the observable fields of a IPFailover.

func (*IPFailoverObservation) DeepCopy

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

func (*IPFailoverObservation) DeepCopyInto

func (in *IPFailoverObservation) DeepCopyInto(out *IPFailoverObservation)

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

type IPFailoverParameters

type IPFailoverParameters struct {
	// DatacenterConfig contains information about the datacenter resource
	// on which the resource will be created
	//
	// +kubebuilder:validation:Required
	DatacenterCfg DatacenterConfig `json:"datacenterConfig"`
	// LanConfig contains information about the lan resource
	// on which the resource will be created
	//
	// +kubebuilder:validation:Required
	LanCfg LanConfig `json:"lanConfig"`
	// NicConfig contains information about the nic resource
	// on which the resource will be created
	//
	// +kubebuilder:validation:Required
	NicCfg NicConfig `json:"nicConfig"`
	// IP must be the public IP for which the group is responsible for
	//
	// +kubebuilder:validation:Required
	IP string `json:"ip"`
}

IPFailoverParameters are the observable fields of a IPFailover. Required values when creating a IPFailover: DatacenterConfig, LanConfig (LAN resource must be a public LAN), NicConfig, IP.

func (*IPFailoverParameters) DeepCopy

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

func (*IPFailoverParameters) DeepCopyInto

func (in *IPFailoverParameters) DeepCopyInto(out *IPFailoverParameters)

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

type IPFailoverSpec

type IPFailoverSpec struct {
	xpv1.ResourceSpec `json:",inline"`
	ForProvider       IPFailoverParameters `json:"forProvider"`
}

A IPFailoverSpec defines the desired state of a IPFailover.

func (*IPFailoverSpec) DeepCopy

func (in *IPFailoverSpec) DeepCopy() *IPFailoverSpec

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

func (*IPFailoverSpec) DeepCopyInto

func (in *IPFailoverSpec) DeepCopyInto(out *IPFailoverSpec)

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

type IPFailoverStatus

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

A IPFailoverStatus represents the observed state of a IPFailover.

func (*IPFailoverStatus) DeepCopy

func (in *IPFailoverStatus) DeepCopy() *IPFailoverStatus

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

func (*IPFailoverStatus) DeepCopyInto

func (in *IPFailoverStatus) DeepCopyInto(out *IPFailoverStatus)

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

type Lan

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

	Spec   LanSpec   `json:"spec"`
	Status LanStatus `json:"status,omitempty"`
}

A Lan is an example API type. +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="DATACENTER ID",type="string",JSONPath=".spec.forProvider.datacenterConfig.datacenterId" +kubebuilder:printcolumn:name="LAN ID",type="string",JSONPath=".metadata.annotations.crossplane\\.io/external-name" +kubebuilder:printcolumn:name="LAN NAME",priority=1,type="string",JSONPath=".spec.forProvider.name" +kubebuilder:printcolumn:name="PUBLIC",priority=1,type="string",JSONPath=".spec.forProvider.public" +kubebuilder:printcolumn:name="IPFAILOVERS",priority=1,type="string",JSONPath=".status.atProvider.ipFailovers" +kubebuilder:printcolumn:name="STATE",type="string",JSONPath=".status.atProvider.state" +kubebuilder:printcolumn:name="AGE",type="date",JSONPath=".metadata.creationTimestamp" +kubebuilder:subresource:status +kubebuilder:resource:scope=Cluster,categories={crossplane,managed,ionoscloud}

func (*Lan) DeepCopy

func (in *Lan) DeepCopy() *Lan

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

func (*Lan) DeepCopyInto

func (in *Lan) DeepCopyInto(out *Lan)

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

func (*Lan) DeepCopyObject

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

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

func (*Lan) GetCondition

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

GetCondition of this Lan.

func (*Lan) GetDeletionPolicy

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

GetDeletionPolicy of this Lan.

func (*Lan) GetProviderConfigReference

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

GetProviderConfigReference of this Lan.

func (*Lan) GetProviderReference

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

GetProviderReference of this Lan. Deprecated: Use GetProviderConfigReference.

func (*Lan) GetWriteConnectionSecretToReference

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

GetWriteConnectionSecretToReference of this Lan.

func (*Lan) ResolveReferences

func (mg *Lan) ResolveReferences(ctx context.Context, c client.Reader) error

ResolveReferences of this Lan.

func (*Lan) SetConditions

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

SetConditions of this Lan.

func (*Lan) SetDeletionPolicy

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

SetDeletionPolicy of this Lan.

func (*Lan) SetProviderConfigReference

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

SetProviderConfigReference of this Lan.

func (*Lan) SetProviderReference

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

SetProviderReference of this Lan. Deprecated: Use SetProviderConfigReference.

func (*Lan) SetWriteConnectionSecretToReference

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

SetWriteConnectionSecretToReference of this Lan.

type LanConfig

type LanConfig struct {
	// LanID is the ID of the Lan on which the resource will be created.
	// It needs to be provided via directly or via reference.
	//
	// +immutable
	// +crossplane:generate:reference:type=Lan
	// +crossplane:generate:reference:extractor=ExtractLanID()
	LanID string `json:"lanId,omitempty"`
	// LanIDRef references to a Lan to retrieve its ID
	//
	// +optional
	// +immutable
	LanIDRef *xpv1.Reference `json:"lanIdRef,omitempty"`
	// LanIDSelector selects reference to a Lan to retrieve its lanId
	//
	// +optional
	LanIDSelector *xpv1.Selector `json:"lanIdSelector,omitempty"`
}

LanConfig is used by resources that need to link lans via id or via reference.

func (*LanConfig) DeepCopy

func (in *LanConfig) DeepCopy() *LanConfig

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

func (*LanConfig) DeepCopyInto

func (in *LanConfig) DeepCopyInto(out *LanConfig)

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

type LanList

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

LanList contains a list of Lan

func (*LanList) DeepCopy

func (in *LanList) DeepCopy() *LanList

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

func (*LanList) DeepCopyInto

func (in *LanList) DeepCopyInto(out *LanList)

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

func (*LanList) DeepCopyObject

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

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

func (*LanList) GetItems

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

GetItems of this LanList.

type LanObservation

type LanObservation struct {
	// IPFailovers will be set using IPFailover CR
	IPFailovers []string `json:"ipFailovers,omitempty"`
	LanID       string   `json:"lanId,omitempty"`
	State       string   `json:"state,omitempty"`
}

LanObservation are the observable fields of a Lan.

func (*LanObservation) DeepCopy

func (in *LanObservation) DeepCopy() *LanObservation

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

func (*LanObservation) DeepCopyInto

func (in *LanObservation) DeepCopyInto(out *LanObservation)

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

type LanParameters

type LanParameters struct {
	// DatacenterConfig contains information about the datacenter resource
	// on which the lan will be created
	//
	// +kubebuilder:validation:Required
	DatacenterCfg DatacenterConfig `json:"datacenterConfig"`
	// The name of the  resource.
	//
	// +kubebuilder:validation:Optional
	Name string `json:"name,omitempty"`
	// The unique identifier of the private Cross-Connect the LAN is connected to, if any.
	//
	// +kubebuilder:validation:Optional
	Pcc string `json:"pcc,omitempty"`
	// This LAN faces the public Internet.
	//
	// +kubebuilder:validation:Required
	Public bool `json:"public"`
}

LanParameters are the observable fields of a Lan. Required values when creating a Lan: Public.

func (*LanParameters) DeepCopy

func (in *LanParameters) DeepCopy() *LanParameters

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

func (*LanParameters) DeepCopyInto

func (in *LanParameters) DeepCopyInto(out *LanParameters)

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

type LanSpec

type LanSpec struct {
	xpv1.ResourceSpec `json:",inline"`
	ForProvider       LanParameters `json:"forProvider"`
}

A LanSpec defines the desired state of a Lan.

func (*LanSpec) DeepCopy

func (in *LanSpec) DeepCopy() *LanSpec

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

func (*LanSpec) DeepCopyInto

func (in *LanSpec) DeepCopyInto(out *LanSpec)

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

type LanStatus

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

A LanStatus represents the observed state of a Lan.

func (*LanStatus) DeepCopy

func (in *LanStatus) DeepCopy() *LanStatus

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

func (*LanStatus) DeepCopyInto

func (in *LanStatus) DeepCopyInto(out *LanStatus)

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

type Nic

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

	Spec   NicSpec   `json:"spec"`
	Status NicStatus `json:"status,omitempty"`
}

A Nic is an example API type. +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="DATACENTER ID",type="string",JSONPath=".spec.forProvider.datacenterConfig.datacenterId" +kubebuilder:printcolumn:name="SERVER ID",type="string",JSONPath=".spec.forProvider.serverConfig.serverId" +kubebuilder:printcolumn:name="LAN ID",type="string",JSONPath=".spec.forProvider.lanConfig.lanId" +kubebuilder:printcolumn:name="NIC ID",type="string",JSONPath=".metadata.annotations.crossplane\\.io/external-name" +kubebuilder:printcolumn:name="IPS",priority=1,type="string",JSONPath=".spec.forProvider.ips" +kubebuilder:printcolumn:name="STATE",type="string",JSONPath=".status.atProvider.state" +kubebuilder:printcolumn:name="AGE",type="date",JSONPath=".metadata.creationTimestamp" +kubebuilder:subresource:status +kubebuilder:resource:scope=Cluster,categories={crossplane,managed,ionoscloud}

func (*Nic) DeepCopy

func (in *Nic) DeepCopy() *Nic

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

func (*Nic) DeepCopyInto

func (in *Nic) DeepCopyInto(out *Nic)

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

func (*Nic) DeepCopyObject

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

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

func (*Nic) GetCondition

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

GetCondition of this Nic.

func (*Nic) GetDeletionPolicy

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

GetDeletionPolicy of this Nic.

func (*Nic) GetProviderConfigReference

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

GetProviderConfigReference of this Nic.

func (*Nic) GetProviderReference

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

GetProviderReference of this Nic. Deprecated: Use GetProviderConfigReference.

func (*Nic) GetWriteConnectionSecretToReference

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

GetWriteConnectionSecretToReference of this Nic.

func (*Nic) ResolveReferences

func (mg *Nic) ResolveReferences(ctx context.Context, c client.Reader) error

ResolveReferences of this Nic.

func (*Nic) SetConditions

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

SetConditions of this Nic.

func (*Nic) SetDeletionPolicy

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

SetDeletionPolicy of this Nic.

func (*Nic) SetProviderConfigReference

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

SetProviderConfigReference of this Nic.

func (*Nic) SetProviderReference

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

SetProviderReference of this Nic. Deprecated: Use SetProviderConfigReference.

func (*Nic) SetWriteConnectionSecretToReference

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

SetWriteConnectionSecretToReference of this Nic.

type NicConfig

type NicConfig struct {
	// NicID is the ID of the Nic on which the resource will be created.
	// It needs to be provided via directly or via reference.
	//
	// +immutable
	// +kubebuilder:validation:Format=uuid
	// +crossplane:generate:reference:type=Nic
	// +crossplane:generate:reference:extractor=ExtractNicID()
	NicID string `json:"nicId,omitempty"`
	// NicIDRef references to a Nic to retrieve its ID
	//
	// +optional
	// +immutable
	NicIDRef *xpv1.Reference `json:"nicIdRef,omitempty"`
	// NicIDSelector selects reference to a Nic to retrieve its nicId
	//
	// +optional
	NicIDSelector *xpv1.Selector `json:"nicIdSelector,omitempty"`
}

NicConfig is used by resources that need to link nic via id or via reference.

func (*NicConfig) DeepCopy

func (in *NicConfig) DeepCopy() *NicConfig

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

func (*NicConfig) DeepCopyInto

func (in *NicConfig) DeepCopyInto(out *NicConfig)

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

type NicList

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

NicList contains a list of Nic

func (*NicList) DeepCopy

func (in *NicList) DeepCopy() *NicList

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

func (*NicList) DeepCopyInto

func (in *NicList) DeepCopyInto(out *NicList)

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

func (*NicList) DeepCopyObject

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

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

func (*NicList) GetItems

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

GetItems of this NicList.

type NicObservation

type NicObservation struct {
	NicID    string `json:"nicId,omitempty"`
	VolumeID string `json:"volumeId,omitempty"`
	State    string `json:"state,omitempty"`
}

NicObservation are the observable fields of a Nic.

func (*NicObservation) DeepCopy

func (in *NicObservation) DeepCopy() *NicObservation

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

func (*NicObservation) DeepCopyInto

func (in *NicObservation) DeepCopyInto(out *NicObservation)

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

type NicParameters

type NicParameters struct {
	// DatacenterConfig contains information about the datacenter resource
	// on which the nic will be created
	//
	// +kubebuilder:validation:Required
	DatacenterCfg DatacenterConfig `json:"datacenterConfig"`
	// ServerConfig contains information about the server resource
	// on which the nic will be created
	//
	// +kubebuilder:validation:Required
	ServerCfg ServerConfig `json:"serverConfig"`
	// LanConfig contains information about the lan resource
	// on which the nic will be on
	//
	// +kubebuilder:validation:Required
	LanCfg LanConfig `json:"lanConfig"`
	// The name of the  resource.
	//
	// +kubebuilder:validation:Optional
	Name string `json:"name,omitempty"`
	// The MAC address of the NIC.
	//
	// +kubebuilder:validation:Optional
	Mac string `json:"mac,omitempty"`
	// Collection of IP addresses, assigned to the NIC.
	// Explicitly assigned public IPs need to come from reserved IP blocks.
	// Passing value null or empty array will assign an IP address automatically.
	//
	// +kubebuilder:validation:Optional
	Ips []string `json:"ips,omitempty"`
	// Indicates if the NIC will reserve an IP using DHCP.
	//
	// +kubebuilder:validation:Required
	Dhcp bool `json:"dhcp"`
	// Activate or deactivate the firewall. By default, an active firewall without any defined rules
	// will block all incoming network traffic except for the firewall rules that explicitly allows certain protocols, IP addresses and ports.
	//
	// +kubebuilder:validation:Optional
	FirewallActive bool `json:"firewallActive,omitempty"`
	// The type of firewall rules that will be allowed on the NIC. If not specified, the default INGRESS value is used.
	//
	// +kubebuilder:validation:Enum=BIDIRECTIONAL;EGRESS;INGRESS
	// +kubebuilder:validation:Optional
	FirewallType string `json:"firewallType,omitempty"`
}

NicParameters are the observable fields of a Nic. Required values when creating a Nic: Datacenter ID or Reference, Server ID or Reference, Lan ID or Reference, DHCP.

func (*NicParameters) DeepCopy

func (in *NicParameters) DeepCopy() *NicParameters

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

func (*NicParameters) DeepCopyInto

func (in *NicParameters) DeepCopyInto(out *NicParameters)

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

type NicSpec

type NicSpec struct {
	xpv1.ResourceSpec `json:",inline"`
	ForProvider       NicParameters `json:"forProvider"`
}

A NicSpec defines the desired state of a Nic.

func (*NicSpec) DeepCopy

func (in *NicSpec) DeepCopy() *NicSpec

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

func (*NicSpec) DeepCopyInto

func (in *NicSpec) DeepCopyInto(out *NicSpec)

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

type NicStatus

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

A NicStatus represents the observed state of a Nic.

func (*NicStatus) DeepCopy

func (in *NicStatus) DeepCopy() *NicStatus

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

func (*NicStatus) DeepCopyInto

func (in *NicStatus) DeepCopyInto(out *NicStatus)

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

type Server

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

	Spec   ServerSpec   `json:"spec"`
	Status ServerStatus `json:"status,omitempty"`
}

A Server is an example API type. +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="DATACENTER ID",type="string",JSONPath=".spec.forProvider.datacenterConfig.datacenterId" +kubebuilder:printcolumn:name="SERVER ID",type="string",JSONPath=".metadata.annotations.crossplane\\.io/external-name" +kubebuilder:printcolumn:name="SERVER NAME",priority=1,type="string",JSONPath=".spec.forProvider.name" +kubebuilder:printcolumn:name="BOOT VOLUME ID",priority=1,type="string",JSONPath=".status.atProvider.volumeId" +kubebuilder:printcolumn:name="STATE",type="string",JSONPath=".status.atProvider.state" +kubebuilder:printcolumn:name="AGE",type="date",JSONPath=".metadata.creationTimestamp" +kubebuilder:subresource:status +kubebuilder:resource:scope=Cluster,categories={crossplane,managed,ionoscloud}

func (*Server) DeepCopy

func (in *Server) DeepCopy() *Server

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

func (*Server) DeepCopyInto

func (in *Server) DeepCopyInto(out *Server)

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

func (*Server) DeepCopyObject

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

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

func (*Server) GetCondition

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

GetCondition of this Server.

func (*Server) GetDeletionPolicy

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

GetDeletionPolicy of this Server.

func (*Server) GetProviderConfigReference

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

GetProviderConfigReference of this Server.

func (*Server) GetProviderReference

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

GetProviderReference of this Server. Deprecated: Use GetProviderConfigReference.

func (*Server) GetWriteConnectionSecretToReference

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

GetWriteConnectionSecretToReference of this Server.

func (*Server) ResolveReferences

func (mg *Server) ResolveReferences(ctx context.Context, c client.Reader) error

ResolveReferences of this Server.

func (*Server) SetConditions

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

SetConditions of this Server.

func (*Server) SetDeletionPolicy

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

SetDeletionPolicy of this Server.

func (*Server) SetProviderConfigReference

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

SetProviderConfigReference of this Server.

func (*Server) SetProviderReference

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

SetProviderReference of this Server. Deprecated: Use SetProviderConfigReference.

func (*Server) SetWriteConnectionSecretToReference

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

SetWriteConnectionSecretToReference of this Server.

type ServerConfig

type ServerConfig struct {
	// ServerID is the ID of the Server on which the resource will be created.
	// It needs to be provided via directly or via reference.
	//
	// +immutable
	// +kubebuilder:validation:Format=uuid
	// +crossplane:generate:reference:type=Server
	// +crossplane:generate:reference:extractor=ExtractServerID()
	ServerID string `json:"serverId,omitempty"`
	// ServerIDRef references to a Server to retrieve its ID
	//
	// +optional
	// +immutable
	ServerIDRef *xpv1.Reference `json:"serverIdRef,omitempty"`
	// ServerIDSelector selects reference to a Server to retrieve its serverId
	//
	// +optional
	ServerIDSelector *xpv1.Selector `json:"serverIdSelector,omitempty"`
}

ServerConfig is used by resources that need to link servers via id or via reference.

func (*ServerConfig) DeepCopy

func (in *ServerConfig) DeepCopy() *ServerConfig

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

func (*ServerConfig) DeepCopyInto

func (in *ServerConfig) DeepCopyInto(out *ServerConfig)

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

type ServerList

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

ServerList contains a list of Server

func (*ServerList) DeepCopy

func (in *ServerList) DeepCopy() *ServerList

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

func (*ServerList) DeepCopyInto

func (in *ServerList) DeepCopyInto(out *ServerList)

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

func (*ServerList) DeepCopyObject

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

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

func (*ServerList) GetItems

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

GetItems of this ServerList.

type ServerObservation

type ServerObservation struct {
	ServerID string `json:"serverId,omitempty"`
	VolumeID string `json:"volumeId,omitempty"`
	State    string `json:"state,omitempty"`
}

ServerObservation are the observable fields of a Server.

func (*ServerObservation) DeepCopy

func (in *ServerObservation) DeepCopy() *ServerObservation

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

func (*ServerObservation) DeepCopyInto

func (in *ServerObservation) DeepCopyInto(out *ServerObservation)

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

type ServerParameters

type ServerParameters struct {
	// DatacenterConfig contains information about the datacenter resource
	// on which the server will be created
	//
	// +kubebuilder:validation:Required
	DatacenterCfg DatacenterConfig `json:"datacenterConfig"`
	// The name of the  resource.
	Name string `json:"name,omitempty"`
	// The total number of cores for the server.
	//
	// +kubebuilder:validation:Required
	Cores int32 `json:"cores"`
	// The memory size for the server in MB, such as 2048. Size must be specified in multiples of 256 MB with a minimum of 256 MB.
	// however, if you set ramHotPlug to TRUE then you must use a minimum of 1024 MB. If you set the RAM size more than 240GB,
	// then ramHotPlug will be set to FALSE and can not be set to TRUE unless RAM size not set to less than 240GB.
	//
	// +kubebuilder:validation:MultipleOf=256
	// +kubebuilder:validation:Required
	RAM int32 `json:"ram"`
	// The availability zone in which the server should be provisioned.
	//
	// +kubebuilder:validation:Enum=AUTO;ZONE_1;ZONE_2
	// +kubebuilder:default=AUTO
	AvailabilityZone string `json:"availabilityZone,omitempty"`
	// CPU architecture on which server gets provisioned; not all CPU architectures are available in all datacenter regions;
	// available CPU architectures can be retrieved from the datacenter resource.
	//
	// +kubebuilder:validation:Enum=AMD_OPTERON;INTEL_SKYLAKE;INTEL_XEON
	CPUFamily string `json:"cpuFamily,omitempty"`
	// +kubebuilder:validation:Optional
	BootCdromID string `json:"bootCdromId,omitempty"`
	// In order to attach a volume to the server, it is recommended to use VolumeConfig
	// to set the existing volume (via id or via reference).
	// To detach a volume from the server, update the CR spec by removing it.
	//
	// VolumeConfig contains information about the existing volume resource
	// which will be attached to the server and set as bootVolume
	VolumeCfg VolumeConfig `json:"volumeConfig,omitempty"`
}

ServerParameters are the observable fields of a Server. Required values when creating a Server: Datacenter ID or Reference, Cores, RAM.

func (*ServerParameters) DeepCopy

func (in *ServerParameters) DeepCopy() *ServerParameters

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

func (*ServerParameters) DeepCopyInto

func (in *ServerParameters) DeepCopyInto(out *ServerParameters)

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

type ServerSpec

type ServerSpec struct {
	xpv1.ResourceSpec `json:",inline"`
	ForProvider       ServerParameters `json:"forProvider"`
}

A ServerSpec defines the desired state of a Server.

func (*ServerSpec) DeepCopy

func (in *ServerSpec) DeepCopy() *ServerSpec

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

func (*ServerSpec) DeepCopyInto

func (in *ServerSpec) DeepCopyInto(out *ServerSpec)

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

type ServerStatus

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

A ServerStatus represents the observed state of a Server.

func (*ServerStatus) DeepCopy

func (in *ServerStatus) DeepCopy() *ServerStatus

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

func (*ServerStatus) DeepCopyInto

func (in *ServerStatus) DeepCopyInto(out *ServerStatus)

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

type Template

type Template struct {
	// The name of the  resource.
	Name string `json:"name,omitempty"`
	// The ID of the  template.
	//
	// +kubebuilder:validation:Format=uuid
	TemplateID string `json:"templateId,omitempty"`
}

Template refers to the template used for cube servers

func (*Template) DeepCopy

func (in *Template) DeepCopy() *Template

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

func (*Template) DeepCopyInto

func (in *Template) DeepCopyInto(out *Template)

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

type Volume

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

	Spec   VolumeSpec   `json:"spec"`
	Status VolumeStatus `json:"status,omitempty"`
}

A Volume is an example API type. +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="DATACENTER ID",type="string",JSONPath=".spec.forProvider.datacenterConfig.datacenterId" +kubebuilder:printcolumn:name="VOLUME ID",type="string",JSONPath=".metadata.annotations.crossplane\\.io/external-name" +kubebuilder:printcolumn:name="VOLUME NAME",priority=1,type="string",JSONPath=".spec.forProvider.name" +kubebuilder:printcolumn:name="TYPE",priority=1,type="string",JSONPath=".spec.forProvider.type" +kubebuilder:printcolumn:name="STATE",type="string",JSONPath=".status.atProvider.state" +kubebuilder:printcolumn:name="AGE",type="date",JSONPath=".metadata.creationTimestamp" +kubebuilder:subresource:status +kubebuilder:resource:scope=Cluster,categories={crossplane,managed,ionoscloud}

func (*Volume) DeepCopy

func (in *Volume) DeepCopy() *Volume

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

func (*Volume) DeepCopyInto

func (in *Volume) DeepCopyInto(out *Volume)

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

func (*Volume) DeepCopyObject

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

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

func (*Volume) GetCondition

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

GetCondition of this Volume.

func (*Volume) GetDeletionPolicy

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

GetDeletionPolicy of this Volume.

func (*Volume) GetProviderConfigReference

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

GetProviderConfigReference of this Volume.

func (*Volume) GetProviderReference

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

GetProviderReference of this Volume. Deprecated: Use GetProviderConfigReference.

func (*Volume) GetWriteConnectionSecretToReference

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

GetWriteConnectionSecretToReference of this Volume.

func (*Volume) ResolveReferences

func (mg *Volume) ResolveReferences(ctx context.Context, c client.Reader) error

ResolveReferences of this Volume.

func (*Volume) SetConditions

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

SetConditions of this Volume.

func (*Volume) SetDeletionPolicy

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

SetDeletionPolicy of this Volume.

func (*Volume) SetProviderConfigReference

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

SetProviderConfigReference of this Volume.

func (*Volume) SetProviderReference

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

SetProviderReference of this Volume. Deprecated: Use SetProviderConfigReference.

func (*Volume) SetWriteConnectionSecretToReference

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

SetWriteConnectionSecretToReference of this Volume.

type VolumeConfig

type VolumeConfig struct {
	// VolumeID is the ID of the Volume.
	// It needs to be provided via directly or via reference.
	//
	// +kubebuilder:validation:Format=uuid
	// +crossplane:generate:reference:type=Volume
	// +crossplane:generate:reference:extractor=ExtractVolumeID()
	VolumeID string `json:"volumeId,omitempty"`
	// VolumeIDRef references to a Volume to retrieve its ID
	//
	// +optional
	VolumeIDRef *xpv1.Reference `json:"volumeIdRef,omitempty"`
	// VolumeIDSelector selects reference to a Volume to retrieve its volumeId
	//
	// +optional
	VolumeIDSelector *xpv1.Selector `json:"volumeIdSelector,omitempty"`
}

VolumeConfig is used by resources that need to link volumes via id or via reference.

func (*VolumeConfig) DeepCopy

func (in *VolumeConfig) DeepCopy() *VolumeConfig

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

func (*VolumeConfig) DeepCopyInto

func (in *VolumeConfig) DeepCopyInto(out *VolumeConfig)

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

type VolumeList

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

VolumeList contains a list of Volume

func (*VolumeList) DeepCopy

func (in *VolumeList) DeepCopy() *VolumeList

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

func (*VolumeList) DeepCopyInto

func (in *VolumeList) DeepCopyInto(out *VolumeList)

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

func (*VolumeList) DeepCopyObject

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

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

func (*VolumeList) GetItems

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

GetItems of this VolumeList.

type VolumeObservation

type VolumeObservation struct {
	VolumeID string `json:"volumeId,omitempty"`
	State    string `json:"state,omitempty"`
}

VolumeObservation are the observable fields of a Volume.

func (*VolumeObservation) DeepCopy

func (in *VolumeObservation) DeepCopy() *VolumeObservation

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

func (*VolumeObservation) DeepCopyInto

func (in *VolumeObservation) DeepCopyInto(out *VolumeObservation)

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

type VolumeParameters

type VolumeParameters struct {
	// DatacenterConfig contains information about the datacenter resource
	// on which the server will be created
	//
	// +kubebuilder:validation:Required
	DatacenterCfg DatacenterConfig `json:"datacenterConfig"`
	// The name of the  resource.
	Name string `json:"name,omitempty"`
	// Hardware type of the volume.
	// DAS (Direct Attached Storage) could be used only in a composite call with a Cube server.
	//
	// +immutable
	// +kubebuilder:validation:Enum=HDD;SSD;SSD Standard;SSD Premium;DAS;ISO
	// +kubebuilder:validation:Required
	Type string `json:"type"`
	// The size of the volume in GB.
	//
	// +kubebuilder:validation:Required
	Size float32 `json:"size"`
	// The availability zone in which the volume should be provisioned.
	// The storage volume will be provisioned on as few physical storage devices as possible, but this cannot be guaranteed upfront.
	// This is unavailable for DAS (Direct Attached Storage), and subject to availability for SSD.
	//
	// +kubebuilder:validation:Enum=AUTO;ZONE_1;ZONE_2;ZONE_3
	AvailabilityZone string `json:"availabilityZone,omitempty"`
	// Image or snapshot ID to be used as template for this volume.
	// Make sure the image selected is compatible with the datacenter's location.
	// Note: when creating a volume, set image, image alias, or licence type
	//
	// +immutable
	Image string `json:"image,omitempty"`
	// Initial password to be set for installed OS. Works with public images only. Not modifiable, forbidden in update requests.
	// Password rules allows all characters from a-z, A-Z, 0-9.
	//
	// +immutable
	ImagePassword string `json:"imagePassword,omitempty"`
	// +immutable
	// Note: when creating a volume, set image, image alias, or licence type
	ImageAlias string `json:"imageAlias,omitempty"`
	// Public SSH keys are set on the image as authorized keys for appropriate SSH login to the instance using the corresponding private key.
	// This field may only be set in creation requests. When reading, it always returns null.
	// SSH keys are only supported if a public Linux image is used for the volume creation.
	//
	// +immutable
	SSHKeys []string `json:"sshKeys,omitempty"`
	// The bus type of the volume.
	//
	// +kubebuilder:validation:Enum=VIRTIO;IDE;UNKNOWN
	// +kubebuilder:default=VIRTIO
	Bus string `json:"bus,omitempty"`
	// OS type for this volume.
	// Note: when creating a volume, set image, image alias, or licence type
	//
	// +immutable
	// +kubebuilder:validation:Enum=UNKNOWN;WINDOWS;WINDOWS2016;WINDOWS2022;LINUX;OTHER
	LicenceType string `json:"licenceType,omitempty"`
	// Hot-plug capable CPU (no reboot required).
	CPUHotPlug bool `json:"cpuHotPlug,omitempty"`
	// Hot-plug capable RAM (no reboot required).
	RAMHotPlug bool `json:"ramHotPlug,omitempty"`
	// Hot-plug capable NIC (no reboot required).
	NicHotPlug bool `json:"nicHotPlug,omitempty"`
	// Hot-unplug capable NIC (no reboot required).
	NicHotUnplug bool `json:"nicHotUnplug,omitempty"`
	// Hot-plug capable Virt-IO drive (no reboot required).
	DiscVirtioHotPlug bool `json:"discVirtioHotPlug,omitempty"`
	// Hot-unplug capable Virt-IO drive (no reboot required). Not supported with Windows VMs.
	DiscVirtioHotUnplug bool `json:"discVirtioHotUnplug,omitempty"`
	// The ID of the backup unit that the user has access to.
	// The property is immutable and is only allowed to be set on creation of a new a volume.
	// It is mandatory to provide either 'public image' or 'imageAlias' in conjunction with this property.
	//
	// +immutable
	BackupunitID string `json:"backupunitId,omitempty"`
	// The cloud-init configuration for the volume as base64 encoded string.
	// The property is immutable and is only allowed to be set on creation of a new a volume.
	// It is mandatory to provide either 'public image' or 'imageAlias' that has cloud-init compatibility in conjunction with this property.
	//
	// +immutable
	UserData string `json:"userData,omitempty"`
}

VolumeParameters are the observable fields of a Volume. Required values when creating a Volume: Datacenter ID or Reference, Size, Type, Licence Type, Image ID or Image Alias. Note: when using images, it is recommended to use SSH Keys or Image Password.

func (*VolumeParameters) DeepCopy

func (in *VolumeParameters) DeepCopy() *VolumeParameters

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

func (*VolumeParameters) DeepCopyInto

func (in *VolumeParameters) DeepCopyInto(out *VolumeParameters)

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

type VolumeSpec

type VolumeSpec struct {
	xpv1.ResourceSpec `json:",inline"`
	ForProvider       VolumeParameters `json:"forProvider"`
}

A VolumeSpec defines the desired state of a Volume.

func (*VolumeSpec) DeepCopy

func (in *VolumeSpec) DeepCopy() *VolumeSpec

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

func (*VolumeSpec) DeepCopyInto

func (in *VolumeSpec) DeepCopyInto(out *VolumeSpec)

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

type VolumeStatus

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

A VolumeStatus represents the observed state of a Volume.

func (*VolumeStatus) DeepCopy

func (in *VolumeStatus) DeepCopy() *VolumeStatus

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

func (*VolumeStatus) DeepCopyInto

func (in *VolumeStatus) DeepCopyInto(out *VolumeStatus)

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