v1alpha1

package
v1.0.12 Latest Latest
Warning

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

Go to latest
Published: May 9, 2024 License: Apache-2.0 Imports: 13 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 (
	APIGroup = "compute.ionoscloud.crossplane.io"
	Version  = "v1alpha1"
)

Package type metadata.

Variables

View Source
var (
	DatacenterKind             = reflect.TypeOf(Datacenter{}).Name()
	DatacenterGroupKind        = schema.GroupKind{Group: APIGroup, 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: APIGroup, Kind: FirewallRuleKind}.String()
	FirewallRuleKindAPIVersion   = FirewallRuleKind + "." + SchemeGroupVersion.String()
	FirewallRuleGroupVersionKind = SchemeGroupVersion.WithKind(FirewallRuleKind)
)

FirewallRule type metadata.

View Source
var (
	GroupKind             = reflect.TypeOf(Group{}).Name()
	GroupGroupKind        = schema.GroupKind{Group: APIGroup, Kind: GroupKind}.String()
	GroupAPIVersion       = GroupKind + "." + SchemeGroupVersion.String()
	GroupGroupVersionKind = SchemeGroupVersion.WithKind(GroupKind)
)

Group type metadata

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

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

	// AddToScheme adds the types in this group-version to the given scheme.
	AddToScheme = SchemeBuilder.AddToScheme
)
View Source
var (
	IPBlockKind             = reflect.TypeOf(IPBlock{}).Name()
	IPBlockGroupKind        = schema.GroupKind{Group: APIGroup, 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: APIGroup, 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: APIGroup, 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: APIGroup, Kind: NicKind}.String()
	NicKindAPIVersion   = NicKind + "." + SchemeGroupVersion.String()
	NicGroupVersionKind = SchemeGroupVersion.WithKind(NicKind)
)

Nic type metadata.

View Source
var (
	PrivateCrossConnectKind             = reflect.TypeOf(Pcc{}).Name()
	PrivateCrossConnectGroupKind        = schema.GroupKind{Group: APIGroup, Kind: PrivateCrossConnectKind}.String()
	PrivateCrossConnectKindAPIVersion   = PrivateCrossConnectKind + "." + SchemeGroupVersion.String()
	PrivateCrossConnectGroupVersionKind = SchemeGroupVersion.WithKind(PrivateCrossConnectKind)
)

Pcc type metadata.

View Source
var (
	S3KeyKind             = reflect.TypeOf(S3Key{}).Name()
	S3KeyGroupKind        = schema.GroupKind{Group: APIGroup, Kind: S3KeyKind}.String()
	S3KeyKindAPIVersion   = S3KeyKind + "." + SchemeGroupVersion.String()
	S3KeyGroupVersionKind = SchemeGroupVersion.WithKind(S3KeyKind)
)

S3Key type metadata.

View Source
var (
	CubeServerKind             = reflect.TypeOf(CubeServer{}).Name()
	CubeServerGroupKind        = schema.GroupKind{Group: APIGroup, 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: APIGroup, Kind: ServerKind}.String()
	ServerKindAPIVersion   = ServerKind + "." + SchemeGroupVersion.String()
	ServerGroupVersionKind = SchemeGroupVersion.WithKind(ServerKind)
)

Server type metadata.

View Source
var (
	UserKind             = reflect.TypeOf(User{}).Name()
	UserGroupKind        = schema.GroupKind{Group: APIGroup, Kind: UserKind}.String()
	UserKindAPIVersion   = UserKind + "." + SchemeGroupVersion.String()
	UserGroupVersionKind = SchemeGroupVersion.WithKind(UserKind)
)

User type metadata.

View Source
var (
	VolumeKind             = reflect.TypeOf(Volume{}).Name()
	VolumeGroupKind        = schema.GroupKind{Group: APIGroup, 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 ExtractIPBlockID

func ExtractIPBlockID() reference.ExtractValueFn

ExtractIPBlockID returns the externalName of a referenced IPBlock.

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 ExtractPccID added in v1.0.7

func ExtractPccID() reference.ExtractValueFn

ExtractPccID returns the externalName of a referenced Pcc.

func ExtractServerID

func ExtractServerID() reference.ExtractValueFn

ExtractServerID returns the externalName of a referenced Server.

func ExtractUserID added in v1.0.10

func ExtractUserID() reference.ExtractValueFn

ExtractUserID returns the externalName of a referenced User.

func ExtractVolumeID

func ExtractVolumeID() reference.ExtractValueFn

ExtractVolumeID returns the externalName of a referenced Volume.

Types

type BackupUnitConfig

type BackupUnitConfig struct {
	// BackupUnitID is the ID of the BackupUnit 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=github.com/ionos-cloud/crossplane-provider-ionoscloud/apis/backup/v1alpha1.BackupUnit
	// +crossplane:generate:reference:extractor=github.com/ionos-cloud/crossplane-provider-ionoscloud/apis/backup/v1alpha1.ExtractBackupUnitID()
	BackupUnitID string `json:"backupUnitId,omitempty"`
	// BackupUnitIDRef references to a BackupUnit to retrieve its ID.
	//
	// +optional
	// +immutable
	BackupUnitIDRef *xpv1.Reference `json:"backupUnitIdRef,omitempty"`
	// BackupUnitIDSelector selects reference to a BackupUnit to retrieve its BackupUnitID.
	//
	// +optional
	BackupUnitIDSelector *xpv1.Selector `json:"backupUnitIdSelector,omitempty"`
}

BackupUnitConfig is used by resources that need to link backupUnits via id or via reference.

func (*BackupUnitConfig) DeepCopy

func (in *BackupUnitConfig) DeepCopy() *BackupUnitConfig

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

func (*BackupUnitConfig) DeepCopyInto

func (in *BackupUnitConfig) DeepCopyInto(out *BackupUnitConfig)

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

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) GetManagementPolicies added in v1.0.6

func (mg *CubeServer) GetManagementPolicies() xpv1.ManagementPolicies

GetManagementPolicies of this CubeServer.

func (*CubeServer) GetProviderConfigReference

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

GetProviderConfigReference of this CubeServer.

func (*CubeServer) GetPublishConnectionDetailsTo added in v1.0.2

func (mg *CubeServer) GetPublishConnectionDetailsTo() *xpv1.PublishConnectionDetailsTo

GetPublishConnectionDetailsTo of this CubeServer.

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) SetManagementPolicies added in v1.0.6

func (mg *CubeServer) SetManagementPolicies(r xpv1.ManagementPolicies)

SetManagementPolicies of this CubeServer.

func (*CubeServer) SetProviderConfigReference

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

SetProviderConfigReference of this CubeServer.

func (*CubeServer) SetPublishConnectionDetailsTo added in v1.0.2

func (mg *CubeServer) SetPublishConnectionDetailsTo(r *xpv1.PublishConnectionDetailsTo)

SetPublishConnectionDetailsTo of this CubeServer.

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.
	//
	// +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"`
	// 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"`
	// Image Alias to be used for this volume.
	// Note: when creating a volume - set image, image alias, or licence type.
	//
	// +immutable
	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"`
	// 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"`
	// BackupUnitCfg contains information about the backup unit resource
	// 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
	BackupUnitCfg BackupUnitConfig `json:"backupUnitConfig,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"`
}

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",type="string",JSONPath=".spec.forProvider.name" +kubebuilder:printcolumn:name="LOCATION",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) GetManagementPolicies added in v1.0.6

func (mg *Datacenter) GetManagementPolicies() xpv1.ManagementPolicies

GetManagementPolicies of this Datacenter.

func (*Datacenter) GetProviderConfigReference

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

GetProviderConfigReference of this Datacenter.

func (*Datacenter) GetPublishConnectionDetailsTo added in v1.0.2

func (mg *Datacenter) GetPublishConnectionDetailsTo() *xpv1.PublishConnectionDetailsTo

GetPublishConnectionDetailsTo of this Datacenter.

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) SetManagementPolicies added in v1.0.6

func (mg *Datacenter) SetManagementPolicies(r xpv1.ManagementPolicies)

SetManagementPolicies of this Datacenter.

func (*Datacenter) SetProviderConfigReference

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

SetProviderConfigReference of this Datacenter.

func (*Datacenter) SetPublishConnectionDetailsTo added in v1.0.2

func (mg *Datacenter) SetPublishConnectionDetailsTo(r *xpv1.PublishConnectionDetailsTo)

SetPublishConnectionDetailsTo of this Datacenter.

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).
	// Location can have the following values: de/fra, us/las, us/ewr, de/txl, gb/lhr, es/vit.
	//
	// +immutable
	// +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="FIREWALLRULE 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) GetManagementPolicies added in v1.0.6

func (mg *FirewallRule) GetManagementPolicies() xpv1.ManagementPolicies

GetManagementPolicies of this FirewallRule.

func (*FirewallRule) GetProviderConfigReference

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

GetProviderConfigReference of this FirewallRule.

func (*FirewallRule) GetPublishConnectionDetailsTo added in v1.0.2

func (mg *FirewallRule) GetPublishConnectionDetailsTo() *xpv1.PublishConnectionDetailsTo

GetPublishConnectionDetailsTo of this FirewallRule.

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) SetManagementPolicies added in v1.0.6

func (mg *FirewallRule) SetManagementPolicies(r xpv1.ManagementPolicies)

SetManagementPolicies of this FirewallRule.

func (*FirewallRule) SetProviderConfigReference

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

SetProviderConfigReference of this FirewallRule.

func (*FirewallRule) SetPublishConnectionDetailsTo added in v1.0.2

func (mg *FirewallRule) SetPublishConnectionDetailsTo(r *xpv1.PublishConnectionDetailsTo)

SetPublishConnectionDetailsTo of this FirewallRule.

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"`
	SourceIP       string `json:"sourceIp,omitempty"`
	TargetIP       string `json:"targetIp,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.
	// SourceIP can be set directly or via reference to an IP Block and index.
	//
	// +kubebuilder:validation:Optional
	SourceIPCfg FwIPConfig `json:"sourceIpConfig,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.
	// TargetIP can be set directly or via reference to an IP Block and index.
	//
	// +kubebuilder:validation:Optional
	TargetIPCfg FwIPConfig `json:"targetIpConfig,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 FwIPConfig added in v1.0.2

type FwIPConfig struct {
	// Use IP or CIDR to set specific IP or CIDR to the resource. If both IP and IPBlockConfig are set,
	// only `ip` field will be considered.
	//
	// +kubebuilder:validation:Pattern="^([0-9]{1,3}\\.){3}[0-9]{1,3}(/([0-9]|[1-2][0-9]|3[0-2]))?$"
	IP string `json:"ip,omitempty"`
	// Use IpBlockConfig to reference existing IPBlock, and to mention the index for the IP.
	// Index starts from 0 and it must be provided.
	IPBlockCfg IPBlockConfig `json:"ipBlockConfig,omitempty"`
}

FwIPConfig is used by firewallRule that needs to link ip directly or from IPBlock via id or via reference.

func (*FwIPConfig) DeepCopy added in v1.0.2

func (in *FwIPConfig) DeepCopy() *FwIPConfig

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

func (*FwIPConfig) DeepCopyInto added in v1.0.2

func (in *FwIPConfig) DeepCopyInto(out *FwIPConfig)

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

type Group

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

	Spec   GroupSpec   `json:"spec"`
	Status GroupStatus `json:"status,omitempty"`
}

Group is the Schema for the Group resource API +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="ID",type="string",JSONPath=".metadata.annotations.crossplane\\.io/external-name" +kubebuilder:printcolumn:name="NAME",type="string",JSONPath=".spec.forProvider.name" +kubebuilder:subresource:status +kubebuilder:resource:scope=Cluster,categories={crossplane,managed,ionoscloud}

func (*Group) DeepCopy added in v1.0.10

func (in *Group) DeepCopy() *Group

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

func (*Group) DeepCopyInto added in v1.0.10

func (in *Group) DeepCopyInto(out *Group)

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

func (*Group) DeepCopyObject added in v1.0.10

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

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

func (*Group) GetCondition added in v1.0.10

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

GetCondition of this Group.

func (*Group) GetDeletionPolicy added in v1.0.10

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

GetDeletionPolicy of this Group.

func (*Group) GetManagementPolicies added in v1.0.10

func (mg *Group) GetManagementPolicies() xpv1.ManagementPolicies

GetManagementPolicies of this Group.

func (*Group) GetProviderConfigReference added in v1.0.10

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

GetProviderConfigReference of this Group.

func (*Group) GetPublishConnectionDetailsTo added in v1.0.10

func (mg *Group) GetPublishConnectionDetailsTo() *xpv1.PublishConnectionDetailsTo

GetPublishConnectionDetailsTo of this Group.

func (*Group) GetWriteConnectionSecretToReference added in v1.0.10

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

GetWriteConnectionSecretToReference of this Group.

func (*Group) ResolveReferences added in v1.0.10

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

ResolveReferences of this Group.

func (*Group) SetConditions added in v1.0.10

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

SetConditions of this Group.

func (*Group) SetDeletionPolicy added in v1.0.10

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

SetDeletionPolicy of this Group.

func (*Group) SetManagementPolicies added in v1.0.10

func (mg *Group) SetManagementPolicies(r xpv1.ManagementPolicies)

SetManagementPolicies of this Group.

func (*Group) SetProviderConfigReference added in v1.0.10

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

SetProviderConfigReference of this Group.

func (*Group) SetPublishConnectionDetailsTo added in v1.0.10

func (mg *Group) SetPublishConnectionDetailsTo(r *xpv1.PublishConnectionDetailsTo)

SetPublishConnectionDetailsTo of this Group.

func (*Group) SetWriteConnectionSecretToReference added in v1.0.10

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

SetWriteConnectionSecretToReference of this Group.

type GroupConfig added in v1.0.10

type GroupConfig struct {
	// GroupID is the ID of the Group on which the resource should have access.
	// It needs to be provided directly or via reference.
	//
	// +immutable
	// +kubebuilder:validation:Format=uuid
	// +crossplane:generate:reference:type=github.com/ionos-cloud/crossplane-provider-ionoscloud/apis/compute/v1alpha1.Group
	// +crossplane:generate:reference:extractor=github.com/ionos-cloud/crossplane-provider-ionoscloud/apis/compute/v1alpha1.ExtractGroupID()
	GroupID string `json:"groupId,omitempty"`
	// GroupIDRef references to a Group to retrieve its ID.
	//
	// +optional
	// +immutable
	GroupIDRef *xpv1.Reference `json:"groupIdRef,omitempty"`
	// GroupIDSelector selects reference to a Group to retrieve its GroupID.
	//
	// +optional
	GroupIDSelector *xpv1.Selector `json:"groupIdSelector,omitempty"`
}

GroupConfig is used by resources that need to link Groups via id or via reference.

func (*GroupConfig) DeepCopy added in v1.0.10

func (in *GroupConfig) DeepCopy() *GroupConfig

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

func (*GroupConfig) DeepCopyInto added in v1.0.10

func (in *GroupConfig) DeepCopyInto(out *GroupConfig)

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

type GroupList added in v1.0.10

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

GroupList contains a list of Group

func (*GroupList) DeepCopy added in v1.0.10

func (in *GroupList) DeepCopy() *GroupList

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

func (*GroupList) DeepCopyInto added in v1.0.10

func (in *GroupList) DeepCopyInto(out *GroupList)

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

func (*GroupList) DeepCopyObject added in v1.0.10

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

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

func (*GroupList) GetItems added in v1.0.10

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

GetItems of this GroupList.

type GroupObservation added in v1.0.10

type GroupObservation struct {
	// GroupID is the group id
	GroupID string `json:"groupId,omitempty"`
	// UserIDs of the members of this Group
	UserIDs []string `json:"userIDs,omitempty"`
	// ResourceShares of this Group
	ResourceShares []ResourceShare `json:"resourceShare,omitempty"`
}

GroupObservation are the observable fields of a Group.

func (*GroupObservation) DeepCopy added in v1.0.10

func (in *GroupObservation) DeepCopy() *GroupObservation

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

func (*GroupObservation) DeepCopyInto added in v1.0.10

func (in *GroupObservation) DeepCopyInto(out *GroupObservation)

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

type GroupParameters added in v1.0.10

type GroupParameters struct {
	// Name of the resource.
	//
	// +kubebuilder:validation:Required
	Name string `json:"name"`
	// AccessActivityLog privilege for a group to access activity logs.
	//
	// +kubebuilder:validation:Optional
	// +kubebuilder:validation:default=false
	AccessActivityLog bool `json:"accessActivityLog"`
	// AccessAndManageCertificates privilege for a group to access and manage certificates.
	//
	// +kubebuilder:validation:Optional
	// +kubebuilder:validation:default=false
	AccessAndManageCertificates bool `json:"accessAndManageCertificates"`
	// AccessAndManageDNS privilege for a group to access and manage dns records.
	//
	// +kubebuilder:validation:Optional
	// +kubebuilder:validation:default=false
	AccessAndManageDNS bool `json:"accessAndManageDns"`
	// AccessAndManageMonitoring privilege for a group to access and manage monitoring related functionality
	//
	// +kubebuilder:validation:Optional
	// +kubebuilder:validation:default=false
	AccessAndManageMonitoring bool `json:"accessAndManageMonitoring"`
	// CreateBackupUnit privilege to create backup unit resource
	//
	// +kubebuilder:validation:Optional
	// +kubebuilder:validation:default=false
	CreateBackupUnit bool `json:"createBackupUnit"`
	// CreateDataCenter privilege to create datacenter resource
	//
	// +kubebuilder:validation:Optional
	// +kubebuilder:validation:default=false
	CreateDataCenter bool `json:"createDataCenter"`
	// CreateFlowLog privilege to create flow log resource
	//
	// +kubebuilder:validation:Optional
	// +kubebuilder:validation:default=false
	CreateFlowLog bool `json:"createFlowLog"`
	// CreateInternetAccess privilege to create internet access
	//
	// +kubebuilder:validation:Optional
	// +kubebuilder:validation:default=false
	CreateInternetAccess bool `json:"createInternetAccess"`
	// CreateK8sCluster privilege to create kubernetes cluster
	//
	// +kubebuilder:validation:Optional
	// +kubebuilder:validation:default=false
	CreateK8sCluster bool `json:"createK8sCluster"`
	// CreatePcc privilege to create private cross connect
	//
	// +kubebuilder:validation:Optional
	// +kubebuilder:validation:default=false
	CreatePcc bool `json:"createPcc"`
	// CreateSnapshot privilege to create snapshot
	//
	// +kubebuilder:validation:Optional
	// +kubebuilder:validation:default=false
	CreateSnapshot bool `json:"createSnapshot"`
	// ManageDBaaS privilege to manage DBaaS related functionality
	//
	// +kubebuilder:validation:Optional
	// +kubebuilder:validation:default=false
	ManageDBaaS bool `json:"manageDBaaS"`
	// ManageDataPlatform privilege to access and manage the Data Platform
	//
	// +kubebuilder:validation:Optional
	// +kubebuilder:validation:default=false
	ManageDataPlatform bool `json:"manageDataplatform"`
	// ManageRegistry privilege to access container registry related functionality
	//
	// +kubebuilder:validation:Optional
	// +kubebuilder:validation:default=false
	ManageRegistry bool `json:"manageRegistry"`
	// ReserveIp privilege to reserve ip block
	//
	// +kubebuilder:validation:Optional
	// +kubebuilder:validation:default=false
	ReserveIP bool `json:"reserveIp"`
	// S3Privilege privilege to access S3 functionality
	//
	// +kubebuilder:validation:Optional
	// +kubebuilder:validation:default=false
	S3Privilege bool `json:"s3Privilege"`
	// In order to add a User as member to the Group, it is recommended to use UserCfg
	// to add an existing User as a member (via id or via reference).
	// To remove a User from the Group, update the CR spec by removing it.
	//
	// UserCfg contains information about an existing User resource
	// which will be added to the Group
	UserCfg []UserConfig `json:"userConfig,omitempty"`

	// SharedResources allows sharing privilege to resources between the members of the group
	// In order to share a resource within a group, it must be referenced either by providing its ID directly
	// or by specifying a set of values by which its K8s object can be identified
	ResourceShareCfg []ResourceShareConfig `json:"sharedResourcesConfig,omitempty"`
}

GroupParameters are the observable fields of a Group. Required values when creating a Group: Name

func (*GroupParameters) DeepCopy added in v1.0.10

func (in *GroupParameters) DeepCopy() *GroupParameters

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

func (*GroupParameters) DeepCopyInto added in v1.0.10

func (in *GroupParameters) DeepCopyInto(out *GroupParameters)

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

type GroupSpec added in v1.0.10

type GroupSpec struct {
	xpv1.ResourceSpec `json:",inline"`
	ForProvider       GroupParameters `json:"forProvider"`
}

A GroupSpec defines the desired state of a Group.

func (*GroupSpec) DeepCopy added in v1.0.10

func (in *GroupSpec) DeepCopy() *GroupSpec

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

func (*GroupSpec) DeepCopyInto added in v1.0.10

func (in *GroupSpec) DeepCopyInto(out *GroupSpec)

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

type GroupStatus added in v1.0.10

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

A GroupStatus represents the observed state of a Group.

func (*GroupStatus) DeepCopy added in v1.0.10

func (in *GroupStatus) DeepCopy() *GroupStatus

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

func (*GroupStatus) DeepCopyInto added in v1.0.10

func (in *GroupStatus) DeepCopyInto(out *GroupStatus)

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",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) GetManagementPolicies added in v1.0.6

func (mg *IPBlock) GetManagementPolicies() xpv1.ManagementPolicies

GetManagementPolicies of this IPBlock.

func (*IPBlock) GetProviderConfigReference

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

GetProviderConfigReference of this IPBlock.

func (*IPBlock) GetPublishConnectionDetailsTo added in v1.0.2

func (mg *IPBlock) GetPublishConnectionDetailsTo() *xpv1.PublishConnectionDetailsTo

GetPublishConnectionDetailsTo of this IPBlock.

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) SetManagementPolicies added in v1.0.6

func (mg *IPBlock) SetManagementPolicies(r xpv1.ManagementPolicies)

SetManagementPolicies of this IPBlock.

func (*IPBlock) SetProviderConfigReference

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

SetProviderConfigReference of this IPBlock.

func (*IPBlock) SetPublishConnectionDetailsTo added in v1.0.2

func (mg *IPBlock) SetPublishConnectionDetailsTo(r *xpv1.PublishConnectionDetailsTo)

SetPublishConnectionDetailsTo of this IPBlock.

func (*IPBlock) SetWriteConnectionSecretToReference

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

SetWriteConnectionSecretToReference of this IPBlock.

type IPBlockConfig

type IPBlockConfig struct {
	// IPBlockID is the ID of the IPBlock 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=IPBlock
	// +crossplane:generate:reference:extractor=ExtractIPBlockID()
	IPBlockID string `json:"ipBlockId,omitempty"`
	// IPBlockIDRef references to a IPBlock to retrieve its ID.
	//
	// +optional
	// +immutable
	IPBlockIDRef *xpv1.Reference `json:"ipBlockIdRef,omitempty"`
	// IPBlockIDSelector selects reference to a IPBlock to retrieve its IPBlockID.
	//
	// +optional
	IPBlockIDSelector *xpv1.Selector `json:"ipBlockIdSelector,omitempty"`
	// Index is referring to the IP index retrieved from the IPBlock.
	// Index is starting from 0.
	//
	// +kubebuilder:validation:Required
	Index int `json:"index"`
}

IPBlockConfig - used by resources that need to link IPBlock via id or via reference to get one single IP.

func (*IPBlockConfig) DeepCopy

func (in *IPBlockConfig) DeepCopy() *IPBlockConfig

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

func (*IPBlockConfig) DeepCopyInto

func (in *IPBlockConfig) DeepCopyInto(out *IPBlockConfig)

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

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).
	// Location can have the following values: de/fra, us/las, us/ewr, de/txl, gb/lhr, es/vit.
	//
	// +immutable
	// +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 IPConfig

type IPConfig struct {
	// Use IP to set specific IP to the resource. If both IP and IPBlockConfig are set,
	// only `ip` field will be considered.
	//
	// +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]?)$"
	IP string `json:"ip,omitempty"`
	// Use IpBlockConfig to reference existing IPBlock, and to mention the index for the IP.
	// Index starts from 0 and it must be provided.
	IPBlockCfg IPBlockConfig `json:"ipBlockConfig,omitempty"`
}

IPConfig is used by resources that need to link ip directly or from IPBlock via id or via reference.

func (*IPConfig) DeepCopy

func (in *IPConfig) DeepCopy() *IPConfig

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

func (*IPConfig) DeepCopyInto

func (in *IPConfig) DeepCopyInto(out *IPConfig)

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="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) GetManagementPolicies added in v1.0.6

func (mg *IPFailover) GetManagementPolicies() xpv1.ManagementPolicies

GetManagementPolicies of this IPFailover.

func (*IPFailover) GetProviderConfigReference

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

GetProviderConfigReference of this IPFailover.

func (*IPFailover) GetPublishConnectionDetailsTo added in v1.0.2

func (mg *IPFailover) GetPublishConnectionDetailsTo() *xpv1.PublishConnectionDetailsTo

GetPublishConnectionDetailsTo of this IPFailover.

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) SetManagementPolicies added in v1.0.6

func (mg *IPFailover) SetManagementPolicies(r xpv1.ManagementPolicies)

SetManagementPolicies of this IPFailover.

func (*IPFailover) SetProviderConfigReference

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

SetProviderConfigReference of this IPFailover.

func (*IPFailover) SetPublishConnectionDetailsTo added in v1.0.2

func (mg *IPFailover) SetPublishConnectionDetailsTo(r *xpv1.PublishConnectionDetailsTo)

SetPublishConnectionDetailsTo of this IPFailover.

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"`
	// IPConfig must have a public IP for which the group is responsible for.
	// IP can be set directly, using ipConfig.ip or via reference and index.
	// If both ip and ipBlockConfig is set, only ip field will be considered.
	// It is recommended to use ip field instead of ipBlockConfig field if
	// the ipBlock contains multiple ips.
	//
	// +kubebuilder:validation:Required
	IPCfg IPConfig `json:"ipConfig"`
}

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

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 IPsBlockConfig

type IPsBlockConfig struct {
	// IPBlockID is the ID of the IPBlock 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=IPBlock
	// +crossplane:generate:reference:extractor=ExtractIPBlockID()
	IPBlockID string `json:"ipBlockId,omitempty"`
	// IPBlockIDRef references to a IPBlock to retrieve its ID.
	//
	// +optional
	// +immutable
	IPBlockIDRef *xpv1.Reference `json:"ipBlockIdRef,omitempty"`
	// IPBlockIDSelector selects reference to a IPBlock to retrieve its IPBlockID.
	//
	// +optional
	IPBlockIDSelector *xpv1.Selector `json:"ipBlockIdSelector,omitempty"`
	// Indexes are referring to the IPs indexes retrieved from the IPBlock.
	// Indexes are starting from 0. If no index is set, all IPs from the
	// corresponding IPBlock will be assigned.
	//
	// +optional
	Indexes []int `json:"indexes,omitempty"`
}

IPsBlockConfig - used by resources that need to link IPBlock via id or via reference to get multiple IPs.

func (*IPsBlockConfig) DeepCopy

func (in *IPsBlockConfig) DeepCopy() *IPsBlockConfig

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

func (*IPsBlockConfig) DeepCopyInto

func (in *IPsBlockConfig) DeepCopyInto(out *IPsBlockConfig)

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

type IPsConfigs

type IPsConfigs struct {
	// Use IPs to set specific IPs to the resource. If both IPs and IPsBlockConfigs are set,
	// only `ips` field will be considered.
	IPs []string `json:"ips,omitempty"`
	// Use IpsBlockConfigs to reference existing IPBlocks, and to mention the indexes for the IPs.
	// Indexes start from 0, and multiple indexes can be set. If no index is set, all IPs from the
	// corresponding IPBlock will be assigned to the resource.
	IPBlockCfgs []IPsBlockConfig `json:"ipsBlockConfigs,omitempty"`
}

IPsConfigs - used by resources that need to link multiple IPs directly or from IPBlock via id or via reference.

func (*IPsConfigs) DeepCopy

func (in *IPsConfigs) DeepCopy() *IPsConfigs

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

func (*IPsConfigs) DeepCopyInto

func (in *IPsConfigs) DeepCopyInto(out *IPsConfigs)

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",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) GetManagementPolicies added in v1.0.6

func (mg *Lan) GetManagementPolicies() xpv1.ManagementPolicies

GetManagementPolicies of this Lan.

func (*Lan) GetProviderConfigReference

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

GetProviderConfigReference of this Lan.

func (*Lan) GetPublishConnectionDetailsTo added in v1.0.2

func (mg *Lan) GetPublishConnectionDetailsTo() *xpv1.PublishConnectionDetailsTo

GetPublishConnectionDetailsTo of this Lan.

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) SetManagementPolicies added in v1.0.6

func (mg *Lan) SetManagementPolicies(r xpv1.ManagementPolicies)

SetManagementPolicies of this Lan.

func (*Lan) SetProviderConfigReference

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

SetProviderConfigReference of this Lan.

func (*Lan) SetPublishConnectionDetailsTo added in v1.0.2

func (mg *Lan) SetPublishConnectionDetailsTo(r *xpv1.PublishConnectionDetailsTo)

SetPublishConnectionDetailsTo of this Lan.

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 PccConfig `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: DatacenterConfig, 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=".status.atProvider.ips" +kubebuilder:printcolumn:name="STATE",type="string",JSONPath=".status.atProvider.state" +kubebuilder:printcolumn:name="AGE",type="date",JSONPath=".metadata.creationTimestamp" +kubebuilder:printcolumn:name="PCISlot",type="string",JSONPath=".status.atProvider.pciSlot" +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) GetManagementPolicies added in v1.0.6

func (mg *Nic) GetManagementPolicies() xpv1.ManagementPolicies

GetManagementPolicies of this Nic.

func (*Nic) GetProviderConfigReference

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

GetProviderConfigReference of this Nic.

func (*Nic) GetPublishConnectionDetailsTo added in v1.0.2

func (mg *Nic) GetPublishConnectionDetailsTo() *xpv1.PublishConnectionDetailsTo

GetPublishConnectionDetailsTo of this Nic.

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) SetManagementPolicies added in v1.0.6

func (mg *Nic) SetManagementPolicies(r xpv1.ManagementPolicies)

SetManagementPolicies of this Nic.

func (*Nic) SetProviderConfigReference

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

SetProviderConfigReference of this Nic.

func (*Nic) SetPublishConnectionDetailsTo added in v1.0.2

func (mg *Nic) SetPublishConnectionDetailsTo(r *xpv1.PublishConnectionDetailsTo)

SetPublishConnectionDetailsTo of this Nic.

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"`
	IPs     []string `json:"ips,omitempty"`
	State   string   `json:"state,omitempty"`
	Mac     string   `json:"mac,omitempty"`
	PCISlot int32    `json:"pciSlot,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"`
	// 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.
	// The IPs can be set directly or using reference to the existing IPBlocks and indexes.
	// If no indexes are set, all IPs from the corresponding IPBlock will be assigned.
	// All IPs set on the Nic will be displayed on the status's ips field.
	//
	// +kubebuilder:validation:Optional
	IpsCfg IPsConfigs `json:"ipsConfigs,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"`

	// The vnet ID that belongs to this NIC. Requires system privileges
	//
	// +kubebuilder:validation:Optional
	Vnet string `json:"vnet,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 Pcc added in v1.0.7

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

	Spec   PccSpec   `json:"spec"`
	Status PccStatus `json:"status,omitempty"`
}

A Pcc 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="Pcc ID",type="string",JSONPath=".metadata.annotations.crossplane\\.io/external-name" +kubebuilder:printcolumn:name="Pcc NAME",type="string",JSONPath=".spec.forProvider.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 (*Pcc) DeepCopy added in v1.0.7

func (in *Pcc) DeepCopy() *Pcc

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

func (*Pcc) DeepCopyInto added in v1.0.7

func (in *Pcc) DeepCopyInto(out *Pcc)

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

func (*Pcc) DeepCopyObject added in v1.0.7

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

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

func (*Pcc) GetCondition added in v1.0.7

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

GetCondition of this Pcc.

func (*Pcc) GetDeletionPolicy added in v1.0.7

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

GetDeletionPolicy of this Pcc.

func (*Pcc) GetManagementPolicies added in v1.0.7

func (mg *Pcc) GetManagementPolicies() xpv1.ManagementPolicies

GetManagementPolicies of this Pcc.

func (*Pcc) GetProviderConfigReference added in v1.0.7

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

GetProviderConfigReference of this Pcc.

func (*Pcc) GetPublishConnectionDetailsTo added in v1.0.7

func (mg *Pcc) GetPublishConnectionDetailsTo() *xpv1.PublishConnectionDetailsTo

GetPublishConnectionDetailsTo of this Pcc.

func (*Pcc) GetWriteConnectionSecretToReference added in v1.0.7

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

GetWriteConnectionSecretToReference of this Pcc.

func (*Pcc) SetConditions added in v1.0.7

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

SetConditions of this Pcc.

func (*Pcc) SetDeletionPolicy added in v1.0.7

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

SetDeletionPolicy of this Pcc.

func (*Pcc) SetManagementPolicies added in v1.0.7

func (mg *Pcc) SetManagementPolicies(r xpv1.ManagementPolicies)

SetManagementPolicies of this Pcc.

func (*Pcc) SetProviderConfigReference added in v1.0.7

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

SetProviderConfigReference of this Pcc.

func (*Pcc) SetPublishConnectionDetailsTo added in v1.0.7

func (mg *Pcc) SetPublishConnectionDetailsTo(r *xpv1.PublishConnectionDetailsTo)

SetPublishConnectionDetailsTo of this Pcc.

func (*Pcc) SetWriteConnectionSecretToReference added in v1.0.7

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

SetWriteConnectionSecretToReference of this Pcc.

type PccConfig added in v1.0.7

type PccConfig struct {
	// PrivateCrossConnectID is the ID of the Pcc 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=Pcc
	// +crossplane:generate:reference:extractor=ExtractPccID()
	PrivateCrossConnectID string `json:"PrivateCrossConnectId,omitempty"`
	// PrivateCrossConnectIDRef references to a Pcc to retrieve its ID.
	//
	// +optional
	// +immutable
	PrivateCrossConnectIDRef *xpv1.Reference `json:"PrivateCrossConnectIdRef,omitempty"`
	// PrivateCrossConnectIDSelector selects reference to a Pcc to retrieve its PrivateCrossConnectID.
	//
	// +optional
	PrivateCrossConnectIDSelector *xpv1.Selector `json:"PrivateCrossConnectIdSelector,omitempty"`
}

PccConfig is used by resources that need to link a Cross Connect via id or via reference.

func (*PccConfig) DeepCopy added in v1.0.7

func (in *PccConfig) DeepCopy() *PccConfig

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

func (*PccConfig) DeepCopyInto added in v1.0.7

func (in *PccConfig) DeepCopyInto(out *PccConfig)

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

type PccList added in v1.0.7

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

PccList contains a list of Pcc

func (*PccList) DeepCopy added in v1.0.7

func (in *PccList) DeepCopy() *PccList

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

func (*PccList) DeepCopyInto added in v1.0.7

func (in *PccList) DeepCopyInto(out *PccList)

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

func (*PccList) DeepCopyObject added in v1.0.7

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

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

func (*PccList) GetItems added in v1.0.7

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

GetItems of this PccList.

type PccObservation added in v1.0.7

type PccObservation struct {
	PrivateCrossConnectID string `json:"PrivateCrossConnectId,omitempty"`
	State                 string `json:"state,omitempty"`
}

PccObservation are the observable fields of a Pcc.

func (*PccObservation) DeepCopy added in v1.0.7

func (in *PccObservation) DeepCopy() *PccObservation

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

func (*PccObservation) DeepCopyInto added in v1.0.7

func (in *PccObservation) DeepCopyInto(out *PccObservation)

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

type PccParameters added in v1.0.7

type PccParameters struct {
	// The name of the cross-connection.
	Name string `json:"name,omitempty"`
	// A short description for the cross-connection.
	Description string `json:"description,omitempty"`
}

PccParameters To connect two Crossconnects we need 2 lans defined, one in each Pcc. After, we reference the Pcc through which we want the connection to be established.

func (*PccParameters) DeepCopy added in v1.0.7

func (in *PccParameters) DeepCopy() *PccParameters

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

func (*PccParameters) DeepCopyInto added in v1.0.7

func (in *PccParameters) DeepCopyInto(out *PccParameters)

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

type PccSpec added in v1.0.7

type PccSpec struct {
	xpv1.ResourceSpec `json:",inline"`
	ForProvider       PccParameters `json:"forProvider"`
}

A PccSpec defines the desired state of a Pcc.

func (*PccSpec) DeepCopy added in v1.0.7

func (in *PccSpec) DeepCopy() *PccSpec

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

func (*PccSpec) DeepCopyInto added in v1.0.7

func (in *PccSpec) DeepCopyInto(out *PccSpec)

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

type PccStatus added in v1.0.7

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

A PccStatus represents the observed state of a Pcc.

func (*PccStatus) DeepCopy added in v1.0.7

func (in *PccStatus) DeepCopy() *PccStatus

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

func (*PccStatus) DeepCopyInto added in v1.0.7

func (in *PccStatus) DeepCopyInto(out *PccStatus)

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

type ResourceShare added in v1.0.10

type ResourceShare struct {
	// EditPrivilege for the Resource
	//
	// +kubebuilder:validation:Optional
	// +kubebuilder:validation:default=false
	EditPrivilege bool `json:"editPrivilege,omitempty"`
	// SharePrivilege for the Resource
	//
	// +kubebuilder:validation:Optional
	// +kubebuilder:validation:default=false
	SharePrivilege bool `json:"sharePrivilege,omitempty"`
	// ResourceID is the ID of the Resource to which Group members gain privileges
	// It can only be provided directly
	// +immutable
	// +kubebuilder:validation:Format=uuid
	ResourceID string `json:"resourceId,omitempty"`
}

ResourceShare can be added to a Group to grant privileges to its members on the resource referenced by ResourceID

func (*ResourceShare) DeepCopy added in v1.0.10

func (in *ResourceShare) DeepCopy() *ResourceShare

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

func (*ResourceShare) DeepCopyInto added in v1.0.10

func (in *ResourceShare) DeepCopyInto(out *ResourceShare)

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

type ResourceShareConfig added in v1.0.10

type ResourceShareConfig struct {
	// ResourceShare
	ResourceShare `json:"resourceShare,omitempty"`
	// If ResourceID is not provided directly, the resource can be referenced through other attributes
	// These attributes mut all be provided for the Resource to be resolved successfully
	// Name of the kubernetes object instance of the Custom Resource
	//
	// +kubebuilder:validation:Optional
	Name string `json:"name,omitempty"`
	// Kind of the Custom Resource
	//
	// +kubebuilder:validation:Optional
	Kind string `json:"kind,omitempty"`
	// Version of the Custom Resource
	//
	// +kubebuilder:validation:Optional
	Version string `json:"version,omitempty"`
}

ResourceShareConfig is used for referencing a resource to be added as a ResourceShare within a Group

func (*ResourceShareConfig) DeepCopy added in v1.0.10

func (in *ResourceShareConfig) DeepCopy() *ResourceShareConfig

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

func (*ResourceShareConfig) DeepCopyInto added in v1.0.10

func (in *ResourceShareConfig) DeepCopyInto(out *ResourceShareConfig)

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

type S3Key added in v1.0.7

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

	Spec   S3KeySpec   `json:"spec"`
	Status S3KeyStatus `json:"status,omitempty"`
}

A S3Key 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="S3Key ID",type="string",JSONPath=".metadata.annotations.crossplane\\.io/external-name" +kubebuilder:printcolumn:name="UserID",priority=1,type="string",JSONPath=".spec.forProvider.userID" +kubebuilder:subresource:status +kubebuilder:resource:scope=Cluster,categories={crossplane,managed,ionoscloud}

func (*S3Key) DeepCopy added in v1.0.7

func (in *S3Key) DeepCopy() *S3Key

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

func (*S3Key) DeepCopyInto added in v1.0.7

func (in *S3Key) DeepCopyInto(out *S3Key)

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

func (*S3Key) DeepCopyObject added in v1.0.7

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

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

func (*S3Key) GetCondition added in v1.0.7

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

GetCondition of this S3Key.

func (*S3Key) GetDeletionPolicy added in v1.0.7

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

GetDeletionPolicy of this S3Key.

func (*S3Key) GetManagementPolicies added in v1.0.7

func (mg *S3Key) GetManagementPolicies() xpv1.ManagementPolicies

GetManagementPolicies of this S3Key.

func (*S3Key) GetProviderConfigReference added in v1.0.7

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

GetProviderConfigReference of this S3Key.

func (*S3Key) GetPublishConnectionDetailsTo added in v1.0.7

func (mg *S3Key) GetPublishConnectionDetailsTo() *xpv1.PublishConnectionDetailsTo

GetPublishConnectionDetailsTo of this S3Key.

func (*S3Key) GetWriteConnectionSecretToReference added in v1.0.7

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

GetWriteConnectionSecretToReference of this S3Key.

func (*S3Key) SetConditions added in v1.0.7

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

SetConditions of this S3Key.

func (*S3Key) SetDeletionPolicy added in v1.0.7

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

SetDeletionPolicy of this S3Key.

func (*S3Key) SetManagementPolicies added in v1.0.7

func (mg *S3Key) SetManagementPolicies(r xpv1.ManagementPolicies)

SetManagementPolicies of this S3Key.

func (*S3Key) SetProviderConfigReference added in v1.0.7

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

SetProviderConfigReference of this S3Key.

func (*S3Key) SetPublishConnectionDetailsTo added in v1.0.7

func (mg *S3Key) SetPublishConnectionDetailsTo(r *xpv1.PublishConnectionDetailsTo)

SetPublishConnectionDetailsTo of this S3Key.

func (*S3Key) SetWriteConnectionSecretToReference added in v1.0.7

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

SetWriteConnectionSecretToReference of this S3Key.

type S3KeyList added in v1.0.7

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

S3KeyList contains a list of S3Key

func (*S3KeyList) DeepCopy added in v1.0.7

func (in *S3KeyList) DeepCopy() *S3KeyList

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

func (*S3KeyList) DeepCopyInto added in v1.0.7

func (in *S3KeyList) DeepCopyInto(out *S3KeyList)

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

func (*S3KeyList) DeepCopyObject added in v1.0.7

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

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

func (*S3KeyList) GetItems added in v1.0.7

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

GetItems of this S3KeyList.

type S3KeyObservation added in v1.0.7

type S3KeyObservation struct {
	SecretKey string `json:"secretKey,omitempty"`
	S3KeyID   string `json:"s3KeyID,omitempty"`
}

S3KeyObservation are the observable fields of a S3Key.

func (*S3KeyObservation) DeepCopy added in v1.0.7

func (in *S3KeyObservation) DeepCopy() *S3KeyObservation

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

func (*S3KeyObservation) DeepCopyInto added in v1.0.7

func (in *S3KeyObservation) DeepCopyInto(out *S3KeyObservation)

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

type S3KeyParameters added in v1.0.7

type S3KeyParameters struct {
	// The UUID of the user owning the S3 Key.
	//
	// +kubebuilder:validation:Required
	UserID string `json:"userID"`
	// The S3 Secret key.
	//
	// +immutable
	// +kubebuilder:validation:Optional
	SecretKey string `json:"secretKey"`
	// Whether the S3 is active / enabled or not. Can only be updated to false, by default the key will be created as active. Default value is true.
	//
	// +kubebuilder:validation:Optional
	// +kubebuilder:validation:default=true
	Active bool `json:"active,omitempty"`
}

S3KeyParameters are the observable fields of an S3Key. Required values when creating an S3Key: UserID

func (*S3KeyParameters) DeepCopy added in v1.0.7

func (in *S3KeyParameters) DeepCopy() *S3KeyParameters

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

func (*S3KeyParameters) DeepCopyInto added in v1.0.7

func (in *S3KeyParameters) DeepCopyInto(out *S3KeyParameters)

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

type S3KeySpec added in v1.0.7

type S3KeySpec struct {
	xpv1.ResourceSpec `json:",inline"`
	ForProvider       S3KeyParameters `json:"forProvider"`
}

A S3KeySpec defines the desired state of a S3Key.

func (*S3KeySpec) DeepCopy added in v1.0.7

func (in *S3KeySpec) DeepCopy() *S3KeySpec

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

func (*S3KeySpec) DeepCopyInto added in v1.0.7

func (in *S3KeySpec) DeepCopyInto(out *S3KeySpec)

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

type S3KeyStatus added in v1.0.7

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

A S3KeyStatus represents the observed state of a S3Key.

func (*S3KeyStatus) DeepCopy added in v1.0.7

func (in *S3KeyStatus) DeepCopy() *S3KeyStatus

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

func (*S3KeyStatus) DeepCopyInto added in v1.0.7

func (in *S3KeyStatus) DeepCopyInto(out *S3KeyStatus)

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) GetManagementPolicies added in v1.0.6

func (mg *Server) GetManagementPolicies() xpv1.ManagementPolicies

GetManagementPolicies of this Server.

func (*Server) GetProviderConfigReference

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

GetProviderConfigReference of this Server.

func (*Server) GetPublishConnectionDetailsTo added in v1.0.2

func (mg *Server) GetPublishConnectionDetailsTo() *xpv1.PublishConnectionDetailsTo

GetPublishConnectionDetailsTo of this Server.

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) SetManagementPolicies added in v1.0.6

func (mg *Server) SetManagementPolicies(r xpv1.ManagementPolicies)

SetManagementPolicies of this Server.

func (*Server) SetProviderConfigReference

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

SetProviderConfigReference of this Server.

func (*Server) SetPublishConnectionDetailsTo added in v1.0.2

func (mg *Server) SetPublishConnectionDetailsTo(r *xpv1.PublishConnectionDetailsTo)

SetPublishConnectionDetailsTo of this Server.

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"`
	CPUFamily string `json:"cpuFamily,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.
	//
	// +immutable
	// +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"`

	// The placement group ID that belongs to this server. Requires system privileges
	//
	// +kubebuilder:validation:Optional
	PlacementGroupID string `json:"placementGroupId,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 Template from IONOS Cloud.
	//
	// +kubebuilder:validation:XValidation:rule="self == oldSelf", message="Template name is immutable"
	Name string `json:"name,omitempty"`
	// The ID of the Template from IONOS Cloud.
	//
	// +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 User added in v1.0.9

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

	Spec   UserSpec   `json:"spec"`
	Status UserStatus `json:"status,omitempty"`
}

User is our managed resource. +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="USER_ID",type="string",JSONPath=".metadata.annotations.crossplane\\.io/external-name" +kubebuilder:printcolumn:name="ACTIVE",type="string",JSONPath=".status.atProvider.active" +kubebuilder:printcolumn:name="EMAIL",type="string",JSONPath=".spec.forProvider.email" +kubebuilder:subresource:status +kubebuilder:resource:scope=Cluster,categories={crossplane,managed,ionoscloud}

func (*User) DeepCopy added in v1.0.9

func (in *User) DeepCopy() *User

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

func (*User) DeepCopyInto added in v1.0.9

func (in *User) DeepCopyInto(out *User)

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

func (*User) DeepCopyObject added in v1.0.9

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

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

func (*User) GetCondition added in v1.0.9

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

GetCondition of this User.

func (*User) GetDeletionPolicy added in v1.0.9

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

GetDeletionPolicy of this User.

func (*User) GetManagementPolicies added in v1.0.9

func (mg *User) GetManagementPolicies() xpv1.ManagementPolicies

GetManagementPolicies of this User.

func (*User) GetProviderConfigReference added in v1.0.9

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

GetProviderConfigReference of this User.

func (*User) GetPublishConnectionDetailsTo added in v1.0.9

func (mg *User) GetPublishConnectionDetailsTo() *xpv1.PublishConnectionDetailsTo

GetPublishConnectionDetailsTo of this User.

func (*User) GetWriteConnectionSecretToReference added in v1.0.9

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

GetWriteConnectionSecretToReference of this User.

func (*User) SetConditions added in v1.0.9

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

SetConditions of this User.

func (*User) SetDeletionPolicy added in v1.0.9

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

SetDeletionPolicy of this User.

func (*User) SetManagementPolicies added in v1.0.9

func (mg *User) SetManagementPolicies(r xpv1.ManagementPolicies)

SetManagementPolicies of this User.

func (*User) SetProviderConfigReference added in v1.0.9

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

SetProviderConfigReference of this User.

func (*User) SetPublishConnectionDetailsTo added in v1.0.9

func (mg *User) SetPublishConnectionDetailsTo(r *xpv1.PublishConnectionDetailsTo)

SetPublishConnectionDetailsTo of this User.

func (*User) SetWriteConnectionSecretToReference added in v1.0.9

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

SetWriteConnectionSecretToReference of this User.

type UserConfig added in v1.0.10

type UserConfig struct {
	// UserID is the ID of the User on which the resource should have access.
	// It needs to be provided directly or via reference.
	//
	// +immutable
	// +kubebuilder:validation:Format=uuid
	// +crossplane:generate:reference:type=github.com/ionos-cloud/crossplane-provider-ionoscloud/apis/compute/v1alpha1.User
	// +crossplane:generate:reference:extractor=github.com/ionos-cloud/crossplane-provider-ionoscloud/apis/compute/v1alpha1.ExtractUserID()
	UserID string `json:"userId,omitempty"`
	// UserIDRef references to a User to retrieve its ID.
	//
	// +optional
	// +immutable
	UserIDRef *xpv1.Reference `json:"userIdRef,omitempty"`
	// UserIDSelector selects reference to a User to retrieve its UserID.
	//
	// +optional
	UserIDSelector *xpv1.Selector `json:"userIdSelector,omitempty"`
}

UserConfig is used by resources that need to link Users via id or via reference.

func (*UserConfig) DeepCopy added in v1.0.10

func (in *UserConfig) DeepCopy() *UserConfig

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

func (*UserConfig) DeepCopyInto added in v1.0.10

func (in *UserConfig) DeepCopyInto(out *UserConfig)

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

type UserList added in v1.0.9

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

UserList contains a list of User

func (*UserList) DeepCopy added in v1.0.9

func (in *UserList) DeepCopy() *UserList

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

func (*UserList) DeepCopyInto added in v1.0.9

func (in *UserList) DeepCopyInto(out *UserList)

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

func (*UserList) DeepCopyObject added in v1.0.9

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

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

func (*UserList) GetItems added in v1.0.9

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

GetItems of this UserList.

type UserObservation added in v1.0.9

type UserObservation struct {
	// UserID is the user id.
	// +kubebuilder:validation:Format=uuid
	UserID string `json:"userID,omitempty"`
	// S3CanonicalUserID Canonical (S3) id of the user for a given identity.
	S3CanonicalUserID string `json:"s3CanonicalUserID,omitempty"`
	// Active Indicates if the user is active.
	Active bool `json:"active"`
	// SecAuthActive Indicates if secure authentication is active for the user or not.
	SecAuthActive bool `json:"secAuthActive"`
	// GroupIDs that this user will be a member of
	GroupIDs []string `json:"groupIDs,omitempty"`
}

UserObservation are the observable fields of a User.

func (*UserObservation) DeepCopy added in v1.0.9

func (in *UserObservation) DeepCopy() *UserObservation

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

func (*UserObservation) DeepCopyInto added in v1.0.9

func (in *UserObservation) DeepCopyInto(out *UserObservation)

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

type UserParameters added in v1.0.9

type UserParameters struct {
	// Administrator The group has permission to edit privileges on this resource.
	//
	// +kubebuilder:validation:Required
	Administrator bool `json:"administrator"`
	// Email An e-mail address for the user.
	//
	// +kubebuilder:validation:Required
	Email string `json:"email"`
	// FirstName A first name for the user.
	//
	// +kubebuilder:validation:Required
	FirstName string `json:"firstName"`
	// ForceSecAuth Indicates if secure (two-factor) authentication should be enabled for the user (true) or not (false).
	//
	// +kubebuilder:validation:Required
	ForceSecAuth bool `json:"forceSecAuth"`
	// LastName A last name for the user.
	//
	// +kubebuilder:validation:Required
	LastName string `json:"lastName"`
	// Password A password for the user.
	//
	// +kubebuilder:validation:Required
	Password string `json:"password"`
	// SecAuthActive Indicates if secure authentication is active for the user or not.
	// It can not be used in create requests - can be used in update. Default: false.
	//
	// +kubebuilder:validation:Optional
	// +kubebuilder:validation:default=false
	SecAuthActive bool `json:"secAuthActive"`
	// Active Indicates if the user is active. Default: true.
	//
	// +kubebuilder:validation:Optional
	// +kubebuilder:validation:default=true
	Active bool `json:"active"`
	// GroupIDs that this user will be a member of.
	// NOTE: It is recommended to manage group membership through the group CRD as it offers more flexibility.
	//
	// +kubebuilder:validation:Optional
	GroupIDs []string `json:"groupIDs"`
}

UserParameters defines the desired state of a User. Required values when creating a User: Administrator Email FirstName ForceSecAuth LastName Password

func (*UserParameters) DeepCopy added in v1.0.9

func (in *UserParameters) DeepCopy() *UserParameters

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

func (*UserParameters) DeepCopyInto added in v1.0.9

func (in *UserParameters) DeepCopyInto(out *UserParameters)

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

type UserSpec added in v1.0.9

type UserSpec struct {
	xpv1.ResourceSpec `json:",inline"`
	ForProvider       UserParameters `json:"forProvider"`
}

A UserSpec defines the desired state of a User.

func (*UserSpec) DeepCopy added in v1.0.9

func (in *UserSpec) DeepCopy() *UserSpec

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

func (*UserSpec) DeepCopyInto added in v1.0.9

func (in *UserSpec) DeepCopyInto(out *UserSpec)

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

type UserStatus added in v1.0.9

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

A UserStatus represents the observed state of a User.

func (*UserStatus) DeepCopy added in v1.0.9

func (in *UserStatus) DeepCopy() *UserStatus

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

func (*UserStatus) DeepCopyInto added in v1.0.9

func (in *UserStatus) DeepCopyInto(out *UserStatus)

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:printcolumn:name="PCISlot",type="string",JSONPath=".status.atProvider.pciSlot" +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) GetManagementPolicies added in v1.0.6

func (mg *Volume) GetManagementPolicies() xpv1.ManagementPolicies

GetManagementPolicies of this Volume.

func (*Volume) GetProviderConfigReference

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

GetProviderConfigReference of this Volume.

func (*Volume) GetPublishConnectionDetailsTo added in v1.0.2

func (mg *Volume) GetPublishConnectionDetailsTo() *xpv1.PublishConnectionDetailsTo

GetPublishConnectionDetailsTo of this Volume.

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) SetManagementPolicies added in v1.0.6

func (mg *Volume) SetManagementPolicies(r xpv1.ManagementPolicies)

SetManagementPolicies of this Volume.

func (*Volume) SetProviderConfigReference

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

SetProviderConfigReference of this Volume.

func (*Volume) SetPublishConnectionDetailsTo added in v1.0.2

func (mg *Volume) SetPublishConnectionDetailsTo(r *xpv1.PublishConnectionDetailsTo)

SetPublishConnectionDetailsTo of this Volume.

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"`
	PCISlot  int32  `json:"pciSlot,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"`
	// Image Alias to be used for this volume.
	// Note: when creating a volume - set image, image alias, or licence type.
	//
	// +immutable
	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"`
	// BackupUnitCfg contains information about the backup unit resource
	// 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
	BackupUnitCfg BackupUnitConfig `json:"backupUnitConfig,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