v1alpha1

package
v0.1.0 Latest Latest
Warning

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

Go to latest
Published: Nov 14, 2024 License: Apache-2.0 Imports: 14 Imported by: 0

Documentation

Overview

+kubebuilder:object:generate=true +groupName=nfs.ionoscloud.io +versionName=v1alpha1

Index

Constants

View Source
const (
	CRDGroup   = "nfs.ionoscloud.io"
	CRDVersion = "v1alpha1"
)

Package type metadata.

Variables

View Source
var (
	// CRDGroupVersion is the API Group Version used to register the objects
	CRDGroupVersion = schema.GroupVersion{Group: CRDGroup, Version: CRDVersion}

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

	// AddToScheme adds the types in this group-version to the given scheme.
	AddToScheme = SchemeBuilder.AddToScheme
)
View Source
var (
	NFSCluster_Kind             = "NFSCluster"
	NFSCluster_GroupKind        = schema.GroupKind{Group: CRDGroup, Kind: NFSCluster_Kind}.String()
	NFSCluster_KindAPIVersion   = NFSCluster_Kind + "." + CRDGroupVersion.String()
	NFSCluster_GroupVersionKind = CRDGroupVersion.WithKind(NFSCluster_Kind)
)

Repository type metadata.

View Source
var (
	NFSShare_Kind             = "NFSShare"
	NFSShare_GroupKind        = schema.GroupKind{Group: CRDGroup, Kind: NFSShare_Kind}.String()
	NFSShare_KindAPIVersion   = NFSShare_Kind + "." + CRDGroupVersion.String()
	NFSShare_GroupVersionKind = CRDGroupVersion.WithKind(NFSShare_Kind)
)

Repository type metadata.

Functions

This section is empty.

Types

type ClientGroupsInitParameters

type ClientGroupsInitParameters struct {

	// Optional description for the clients groups.
	// Optional description for the clients groups.
	Description *string `json:"description,omitempty" tf:"description,omitempty"`

	// A singular host allowed to connect to the share. The host can be specified as IP address and can be either IPv4 or IPv6.
	// A singular host allowed to connect to the share. The host can be specified as IP address and can be either IPv4 or IPv6.
	Hosts []*string `json:"hosts,omitempty" tf:"hosts,omitempty"`

	// The allowed host or network to which the export is being shared. The IP address can be either IPv4 or IPv6 and has to be given with CIDR notation.
	// The allowed host or network to which the export is being shared. The IP address can be either IPv4 or IPv6 and has to be given with CIDR notation.
	IPNetworks []*string `json:"ipNetworks,omitempty" tf:"ip_networks,omitempty"`

	// NFS specific configurations. Each configuration includes:
	NFS *ClientGroupsNFSInitParameters `json:"nfs,omitempty" tf:"nfs,omitempty"`
}

func (*ClientGroupsInitParameters) DeepCopy

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

func (*ClientGroupsInitParameters) DeepCopyInto

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

type ClientGroupsNFSInitParameters

type ClientGroupsNFSInitParameters struct {

	// The squash mode for the export. The squash mode can be:
	// The squash mode for the export. The squash mode can be: none - No squash mode. no mapping, root-anonymous - Map root user to anonymous uid, all-anonymous - Map all users to anonymous uid.
	Squash *string `json:"squash,omitempty" tf:"squash,omitempty"`
}

func (*ClientGroupsNFSInitParameters) DeepCopy

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

func (*ClientGroupsNFSInitParameters) DeepCopyInto

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

type ClientGroupsNFSObservation

type ClientGroupsNFSObservation struct {

	// The squash mode for the export. The squash mode can be:
	// The squash mode for the export. The squash mode can be: none - No squash mode. no mapping, root-anonymous - Map root user to anonymous uid, all-anonymous - Map all users to anonymous uid.
	Squash *string `json:"squash,omitempty" tf:"squash,omitempty"`
}

func (*ClientGroupsNFSObservation) DeepCopy

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

func (*ClientGroupsNFSObservation) DeepCopyInto

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

type ClientGroupsNFSParameters

type ClientGroupsNFSParameters struct {

	// The squash mode for the export. The squash mode can be:
	// The squash mode for the export. The squash mode can be: none - No squash mode. no mapping, root-anonymous - Map root user to anonymous uid, all-anonymous - Map all users to anonymous uid.
	// +kubebuilder:validation:Optional
	Squash *string `json:"squash,omitempty" tf:"squash,omitempty"`
}

func (*ClientGroupsNFSParameters) DeepCopy

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

func (*ClientGroupsNFSParameters) DeepCopyInto

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

type ClientGroupsObservation

type ClientGroupsObservation struct {

	// Optional description for the clients groups.
	// Optional description for the clients groups.
	Description *string `json:"description,omitempty" tf:"description,omitempty"`

	// A singular host allowed to connect to the share. The host can be specified as IP address and can be either IPv4 or IPv6.
	// A singular host allowed to connect to the share. The host can be specified as IP address and can be either IPv4 or IPv6.
	Hosts []*string `json:"hosts,omitempty" tf:"hosts,omitempty"`

	// The allowed host or network to which the export is being shared. The IP address can be either IPv4 or IPv6 and has to be given with CIDR notation.
	// The allowed host or network to which the export is being shared. The IP address can be either IPv4 or IPv6 and has to be given with CIDR notation.
	IPNetworks []*string `json:"ipNetworks,omitempty" tf:"ip_networks,omitempty"`

	// NFS specific configurations. Each configuration includes:
	NFS *ClientGroupsNFSObservation `json:"nfs,omitempty" tf:"nfs,omitempty"`
}

func (*ClientGroupsObservation) DeepCopy

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

func (*ClientGroupsObservation) DeepCopyInto

func (in *ClientGroupsObservation) DeepCopyInto(out *ClientGroupsObservation)

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

type ClientGroupsParameters

type ClientGroupsParameters struct {

	// Optional description for the clients groups.
	// Optional description for the clients groups.
	// +kubebuilder:validation:Optional
	Description *string `json:"description,omitempty" tf:"description,omitempty"`

	// A singular host allowed to connect to the share. The host can be specified as IP address and can be either IPv4 or IPv6.
	// A singular host allowed to connect to the share. The host can be specified as IP address and can be either IPv4 or IPv6.
	// +kubebuilder:validation:Optional
	Hosts []*string `json:"hosts" tf:"hosts,omitempty"`

	// The allowed host or network to which the export is being shared. The IP address can be either IPv4 or IPv6 and has to be given with CIDR notation.
	// The allowed host or network to which the export is being shared. The IP address can be either IPv4 or IPv6 and has to be given with CIDR notation.
	// +kubebuilder:validation:Optional
	IPNetworks []*string `json:"ipNetworks" tf:"ip_networks,omitempty"`

	// NFS specific configurations. Each configuration includes:
	// +kubebuilder:validation:Optional
	NFS *ClientGroupsNFSParameters `json:"nfs,omitempty" tf:"nfs,omitempty"`
}

func (*ClientGroupsParameters) DeepCopy

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

func (*ClientGroupsParameters) DeepCopyInto

func (in *ClientGroupsParameters) DeepCopyInto(out *ClientGroupsParameters)

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

type ConnectionsInitParameters

type ConnectionsInitParameters struct {

	// The ID of the datacenter where the Network File Storage cluster is located.
	// The datacenter to connect your instance to.
	// +crossplane:generate:reference:type=github.com/ionos-cloud/provider-upjet-ionoscloud/apis/compute/v1alpha1.Datacenter
	DatacenterID *string `json:"datacenterId,omitempty" tf:"datacenter_id,omitempty"`

	// Reference to a Datacenter in compute to populate datacenterId.
	// +kubebuilder:validation:Optional
	DatacenterIDRef *v1.Reference `json:"datacenterIdRef,omitempty" tf:"-"`

	// Selector for a Datacenter in compute to populate datacenterId.
	// +kubebuilder:validation:Optional
	DatacenterIDSelector *v1.Selector `json:"datacenterIdSelector,omitempty" tf:"-"`

	// The IP address and prefix of the Network File Storage cluster. The IP address can be either IPv4 or IPv6. The IP address has to be given with CIDR notation.
	// The IP address and subnet for your instance.
	IPAddress *string `json:"ipAddress,omitempty" tf:"ip_address,omitempty"`

	// The Private LAN to which the Network File Storage cluster must be connected.
	// The numeric LAN ID to connect your instance to.
	// +crossplane:generate:reference:type=github.com/ionos-cloud/provider-upjet-ionoscloud/apis/compute/v1alpha1.Lan
	Lan *string `json:"lan,omitempty" tf:"lan,omitempty"`

	// Reference to a Lan in compute to populate lan.
	// +kubebuilder:validation:Optional
	LanRef *v1.Reference `json:"lanRef,omitempty" tf:"-"`

	// Selector for a Lan in compute to populate lan.
	// +kubebuilder:validation:Optional
	LanSelector *v1.Selector `json:"lanSelector,omitempty" tf:"-"`
}

func (*ConnectionsInitParameters) DeepCopy

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

func (*ConnectionsInitParameters) DeepCopyInto

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

type ConnectionsObservation

type ConnectionsObservation struct {

	// The ID of the datacenter where the Network File Storage cluster is located.
	// The datacenter to connect your instance to.
	DatacenterID *string `json:"datacenterId,omitempty" tf:"datacenter_id,omitempty"`

	// The IP address and prefix of the Network File Storage cluster. The IP address can be either IPv4 or IPv6. The IP address has to be given with CIDR notation.
	// The IP address and subnet for your instance.
	IPAddress *string `json:"ipAddress,omitempty" tf:"ip_address,omitempty"`

	// The Private LAN to which the Network File Storage cluster must be connected.
	// The numeric LAN ID to connect your instance to.
	Lan *string `json:"lan,omitempty" tf:"lan,omitempty"`
}

func (*ConnectionsObservation) DeepCopy

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

func (*ConnectionsObservation) DeepCopyInto

func (in *ConnectionsObservation) DeepCopyInto(out *ConnectionsObservation)

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

type ConnectionsParameters

type ConnectionsParameters struct {

	// The ID of the datacenter where the Network File Storage cluster is located.
	// The datacenter to connect your instance to.
	// +crossplane:generate:reference:type=github.com/ionos-cloud/provider-upjet-ionoscloud/apis/compute/v1alpha1.Datacenter
	// +kubebuilder:validation:Optional
	DatacenterID *string `json:"datacenterId,omitempty" tf:"datacenter_id,omitempty"`

	// Reference to a Datacenter in compute to populate datacenterId.
	// +kubebuilder:validation:Optional
	DatacenterIDRef *v1.Reference `json:"datacenterIdRef,omitempty" tf:"-"`

	// Selector for a Datacenter in compute to populate datacenterId.
	// +kubebuilder:validation:Optional
	DatacenterIDSelector *v1.Selector `json:"datacenterIdSelector,omitempty" tf:"-"`

	// The IP address and prefix of the Network File Storage cluster. The IP address can be either IPv4 or IPv6. The IP address has to be given with CIDR notation.
	// The IP address and subnet for your instance.
	// +kubebuilder:validation:Optional
	IPAddress *string `json:"ipAddress" tf:"ip_address,omitempty"`

	// The Private LAN to which the Network File Storage cluster must be connected.
	// The numeric LAN ID to connect your instance to.
	// +crossplane:generate:reference:type=github.com/ionos-cloud/provider-upjet-ionoscloud/apis/compute/v1alpha1.Lan
	// +kubebuilder:validation:Optional
	Lan *string `json:"lan,omitempty" tf:"lan,omitempty"`

	// Reference to a Lan in compute to populate lan.
	// +kubebuilder:validation:Optional
	LanRef *v1.Reference `json:"lanRef,omitempty" tf:"-"`

	// Selector for a Lan in compute to populate lan.
	// +kubebuilder:validation:Optional
	LanSelector *v1.Selector `json:"lanSelector,omitempty" tf:"-"`
}

func (*ConnectionsParameters) DeepCopy

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

func (*ConnectionsParameters) DeepCopyInto

func (in *ConnectionsParameters) DeepCopyInto(out *ConnectionsParameters)

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

type NFSCluster

type NFSCluster struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	// +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.connections) || (has(self.initProvider) && has(self.initProvider.connections))",message="spec.forProvider.connections is a required parameter"
	// +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || (has(self.initProvider) && has(self.initProvider.location))",message="spec.forProvider.location is a required parameter"
	// +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.name) || (has(self.initProvider) && has(self.initProvider.name))",message="spec.forProvider.name is a required parameter"
	// +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.size) || (has(self.initProvider) && has(self.initProvider.size))",message="spec.forProvider.size is a required parameter"
	Spec   NFSClusterSpec   `json:"spec"`
	Status NFSClusterStatus `json:"status,omitempty"`
}

NFSCluster is the Schema for the NFSClusters API. Creates and manages Network File Storage (NFS) Cluster objects +kubebuilder:printcolumn:name="SYNCED",type="string",JSONPath=".status.conditions[?(@.type=='Synced')].status" +kubebuilder:printcolumn:name="READY",type="string",JSONPath=".status.conditions[?(@.type=='Ready')].status" +kubebuilder:printcolumn:name="EXTERNAL-NAME",type="string",JSONPath=".metadata.annotations.crossplane\\.io/external-name" +kubebuilder:printcolumn:name="AGE",type="date",JSONPath=".metadata.creationTimestamp" +kubebuilder:resource:scope=Cluster,categories={crossplane,managed,ionos}

func (*NFSCluster) DeepCopy

func (in *NFSCluster) DeepCopy() *NFSCluster

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

func (*NFSCluster) DeepCopyInto

func (in *NFSCluster) DeepCopyInto(out *NFSCluster)

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

func (*NFSCluster) DeepCopyObject

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

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

func (*NFSCluster) GetCondition

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

GetCondition of this NFSCluster.

func (*NFSCluster) GetConnectionDetailsMapping

func (tr *NFSCluster) GetConnectionDetailsMapping() map[string]string

GetConnectionDetailsMapping for this NFSCluster

func (*NFSCluster) GetDeletionPolicy

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

GetDeletionPolicy of this NFSCluster.

func (*NFSCluster) GetID

func (tr *NFSCluster) GetID() string

GetID returns ID of underlying Terraform resource of this NFSCluster

func (*NFSCluster) GetInitParameters

func (tr *NFSCluster) GetInitParameters() (map[string]any, error)

GetInitParameters of this NFSCluster

func (*NFSCluster) GetManagementPolicies

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

GetManagementPolicies of this NFSCluster.

func (*NFSCluster) GetMergedParameters

func (tr *NFSCluster) GetMergedParameters(shouldMergeInitProvider bool) (map[string]any, error)

GetInitParameters of this NFSCluster

func (*NFSCluster) GetObservation

func (tr *NFSCluster) GetObservation() (map[string]any, error)

GetObservation of this NFSCluster

func (*NFSCluster) GetParameters

func (tr *NFSCluster) GetParameters() (map[string]any, error)

GetParameters of this NFSCluster

func (*NFSCluster) GetProviderConfigReference

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

GetProviderConfigReference of this NFSCluster.

func (*NFSCluster) GetPublishConnectionDetailsTo

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

GetPublishConnectionDetailsTo of this NFSCluster.

func (*NFSCluster) GetTerraformResourceType

func (mg *NFSCluster) GetTerraformResourceType() string

GetTerraformResourceType returns Terraform resource type for this NFSCluster

func (*NFSCluster) GetTerraformSchemaVersion

func (tr *NFSCluster) GetTerraformSchemaVersion() int

GetTerraformSchemaVersion returns the associated Terraform schema version

func (*NFSCluster) GetWriteConnectionSecretToReference

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

GetWriteConnectionSecretToReference of this NFSCluster.

func (*NFSCluster) Hub

func (tr *NFSCluster) Hub()

Hub marks this type as a conversion hub.

func (*NFSCluster) LateInitialize

func (tr *NFSCluster) LateInitialize(attrs []byte) (bool, error)

LateInitialize this NFSCluster using its observed tfState. returns True if there are any spec changes for the resource.

func (*NFSCluster) ResolveReferences

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

ResolveReferences of this NFSCluster.

func (*NFSCluster) SetConditions

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

SetConditions of this NFSCluster.

func (*NFSCluster) SetDeletionPolicy

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

SetDeletionPolicy of this NFSCluster.

func (*NFSCluster) SetManagementPolicies

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

SetManagementPolicies of this NFSCluster.

func (*NFSCluster) SetObservation

func (tr *NFSCluster) SetObservation(obs map[string]any) error

SetObservation for this NFSCluster

func (*NFSCluster) SetParameters

func (tr *NFSCluster) SetParameters(params map[string]any) error

SetParameters for this NFSCluster

func (*NFSCluster) SetProviderConfigReference

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

SetProviderConfigReference of this NFSCluster.

func (*NFSCluster) SetPublishConnectionDetailsTo

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

SetPublishConnectionDetailsTo of this NFSCluster.

func (*NFSCluster) SetWriteConnectionSecretToReference

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

SetWriteConnectionSecretToReference of this NFSCluster.

type NFSClusterInitParameters

type NFSClusterInitParameters struct {

	// A list of connections for the Network File Storage cluster. You can specify only one connection. Connections are immutable. Each connection supports the following:
	// The network connections for the Network File Storage Cluster.
	Connections *ConnectionsInitParameters `json:"connections,omitempty" tf:"connections,omitempty"`

	// The location where the Network File Storage cluster is located.
	// The location of the Network File Storage Cluster. Available locations: 'de/fra, 'de/txl'
	Location *string `json:"location,omitempty" tf:"location,omitempty"`

	// The NFS configuration for the Network File Storage cluster. Each NFS configuration supports the following:
	NFS *NFSInitParameters `json:"nfs,omitempty" tf:"nfs,omitempty"`

	// The name of the Network File Storage cluster.
	// The name of the Network File Storage Cluster.
	Name *string `json:"name,omitempty" tf:"name,omitempty"`

	// The size of the Network File Storage cluster in TiB. Note that the cluster size cannot be reduced after provisioning. This value determines the billing fees. Default is 2. The minimum value is 2 and the maximum value is 42.
	// The size of the Network File Storage Cluster. Minimum size is 2.
	Size *float64 `json:"size,omitempty" tf:"size,omitempty"`
}

func (*NFSClusterInitParameters) DeepCopy

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

func (*NFSClusterInitParameters) DeepCopyInto

func (in *NFSClusterInitParameters) DeepCopyInto(out *NFSClusterInitParameters)

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

type NFSClusterList

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

NFSClusterList contains a list of NFSClusters

func (*NFSClusterList) DeepCopy

func (in *NFSClusterList) DeepCopy() *NFSClusterList

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

func (*NFSClusterList) DeepCopyInto

func (in *NFSClusterList) DeepCopyInto(out *NFSClusterList)

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

func (*NFSClusterList) DeepCopyObject

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

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

func (*NFSClusterList) GetItems

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

GetItems of this NFSClusterList.

type NFSClusterObservation

type NFSClusterObservation struct {

	// A list of connections for the Network File Storage cluster. You can specify only one connection. Connections are immutable. Each connection supports the following:
	// The network connections for the Network File Storage Cluster.
	Connections *ConnectionsObservation `json:"connections,omitempty" tf:"connections,omitempty"`

	ID *string `json:"id,omitempty" tf:"id,omitempty"`

	// The location where the Network File Storage cluster is located.
	// The location of the Network File Storage Cluster. Available locations: 'de/fra, 'de/txl'
	Location *string `json:"location,omitempty" tf:"location,omitempty"`

	// The NFS configuration for the Network File Storage cluster. Each NFS configuration supports the following:
	NFS *NFSObservation `json:"nfs,omitempty" tf:"nfs,omitempty"`

	// The name of the Network File Storage cluster.
	// The name of the Network File Storage Cluster.
	Name *string `json:"name,omitempty" tf:"name,omitempty"`

	// The size of the Network File Storage cluster in TiB. Note that the cluster size cannot be reduced after provisioning. This value determines the billing fees. Default is 2. The minimum value is 2 and the maximum value is 42.
	// The size of the Network File Storage Cluster. Minimum size is 2.
	Size *float64 `json:"size,omitempty" tf:"size,omitempty"`
}

func (*NFSClusterObservation) DeepCopy

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

func (*NFSClusterObservation) DeepCopyInto

func (in *NFSClusterObservation) DeepCopyInto(out *NFSClusterObservation)

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

type NFSClusterParameters

type NFSClusterParameters struct {

	// A list of connections for the Network File Storage cluster. You can specify only one connection. Connections are immutable. Each connection supports the following:
	// The network connections for the Network File Storage Cluster.
	// +kubebuilder:validation:Optional
	Connections *ConnectionsParameters `json:"connections,omitempty" tf:"connections,omitempty"`

	// The location where the Network File Storage cluster is located.
	// The location of the Network File Storage Cluster. Available locations: 'de/fra, 'de/txl'
	// +kubebuilder:validation:Optional
	Location *string `json:"location,omitempty" tf:"location,omitempty"`

	// The NFS configuration for the Network File Storage cluster. Each NFS configuration supports the following:
	// +kubebuilder:validation:Optional
	NFS *NFSParameters `json:"nfs,omitempty" tf:"nfs,omitempty"`

	// The name of the Network File Storage cluster.
	// The name of the Network File Storage Cluster.
	// +kubebuilder:validation:Optional
	Name *string `json:"name,omitempty" tf:"name,omitempty"`

	// The size of the Network File Storage cluster in TiB. Note that the cluster size cannot be reduced after provisioning. This value determines the billing fees. Default is 2. The minimum value is 2 and the maximum value is 42.
	// The size of the Network File Storage Cluster. Minimum size is 2.
	// +kubebuilder:validation:Optional
	Size *float64 `json:"size,omitempty" tf:"size,omitempty"`
}

func (*NFSClusterParameters) DeepCopy

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

func (*NFSClusterParameters) DeepCopyInto

func (in *NFSClusterParameters) DeepCopyInto(out *NFSClusterParameters)

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

type NFSClusterSpec

type NFSClusterSpec struct {
	v1.ResourceSpec `json:",inline"`
	ForProvider     NFSClusterParameters `json:"forProvider"`
	// THIS IS A BETA FIELD. It will be honored
	// unless the Management Policies feature flag is disabled.
	// InitProvider holds the same fields as ForProvider, with the exception
	// of Identifier and other resource reference fields. The fields that are
	// in InitProvider are merged into ForProvider when the resource is created.
	// The same fields are also added to the terraform ignore_changes hook, to
	// avoid updating them after creation. This is useful for fields that are
	// required on creation, but we do not desire to update them after creation,
	// for example because of an external controller is managing them, like an
	// autoscaler.
	InitProvider NFSClusterInitParameters `json:"initProvider,omitempty"`
}

NFSClusterSpec defines the desired state of NFSCluster

func (*NFSClusterSpec) DeepCopy

func (in *NFSClusterSpec) DeepCopy() *NFSClusterSpec

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

func (*NFSClusterSpec) DeepCopyInto

func (in *NFSClusterSpec) DeepCopyInto(out *NFSClusterSpec)

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

type NFSClusterStatus

type NFSClusterStatus struct {
	v1.ResourceStatus `json:",inline"`
	AtProvider        NFSClusterObservation `json:"atProvider,omitempty"`
}

NFSClusterStatus defines the observed state of NFSCluster.

func (*NFSClusterStatus) DeepCopy

func (in *NFSClusterStatus) DeepCopy() *NFSClusterStatus

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

func (*NFSClusterStatus) DeepCopyInto

func (in *NFSClusterStatus) DeepCopyInto(out *NFSClusterStatus)

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

type NFSInitParameters

type NFSInitParameters struct {

	// The minimum supported version of the NFS cluster. Supported values: 4.2. Default is 4.2.
	// The minimum Network File Storage version
	MinVersion *string `json:"minVersion,omitempty" tf:"min_version,omitempty"`
}

func (*NFSInitParameters) DeepCopy

func (in *NFSInitParameters) DeepCopy() *NFSInitParameters

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

func (*NFSInitParameters) DeepCopyInto

func (in *NFSInitParameters) DeepCopyInto(out *NFSInitParameters)

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

type NFSObservation

type NFSObservation struct {

	// The minimum supported version of the NFS cluster. Supported values: 4.2. Default is 4.2.
	// The minimum Network File Storage version
	MinVersion *string `json:"minVersion,omitempty" tf:"min_version,omitempty"`
}

func (*NFSObservation) DeepCopy

func (in *NFSObservation) DeepCopy() *NFSObservation

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

func (*NFSObservation) DeepCopyInto

func (in *NFSObservation) DeepCopyInto(out *NFSObservation)

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

type NFSParameters

type NFSParameters struct {

	// The minimum supported version of the NFS cluster. Supported values: 4.2. Default is 4.2.
	// The minimum Network File Storage version
	// +kubebuilder:validation:Optional
	MinVersion *string `json:"minVersion,omitempty" tf:"min_version,omitempty"`
}

func (*NFSParameters) DeepCopy

func (in *NFSParameters) DeepCopy() *NFSParameters

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

func (*NFSParameters) DeepCopyInto

func (in *NFSParameters) DeepCopyInto(out *NFSParameters)

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

type NFSShare

type NFSShare struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	// +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.clientGroups) || (has(self.initProvider) && has(self.initProvider.clientGroups))",message="spec.forProvider.clientGroups is a required parameter"
	// +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || (has(self.initProvider) && has(self.initProvider.location))",message="spec.forProvider.location is a required parameter"
	// +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.name) || (has(self.initProvider) && has(self.initProvider.name))",message="spec.forProvider.name is a required parameter"
	Spec   NFSShareSpec   `json:"spec"`
	Status NFSShareStatus `json:"status,omitempty"`
}

NFSShare is the Schema for the NFSShares API. Creates and manages Network File Storage (NFS) Share objects on IonosCloud. +kubebuilder:printcolumn:name="SYNCED",type="string",JSONPath=".status.conditions[?(@.type=='Synced')].status" +kubebuilder:printcolumn:name="READY",type="string",JSONPath=".status.conditions[?(@.type=='Ready')].status" +kubebuilder:printcolumn:name="EXTERNAL-NAME",type="string",JSONPath=".metadata.annotations.crossplane\\.io/external-name" +kubebuilder:printcolumn:name="AGE",type="date",JSONPath=".metadata.creationTimestamp" +kubebuilder:resource:scope=Cluster,categories={crossplane,managed,ionos}

func (*NFSShare) DeepCopy

func (in *NFSShare) DeepCopy() *NFSShare

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

func (*NFSShare) DeepCopyInto

func (in *NFSShare) DeepCopyInto(out *NFSShare)

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

func (*NFSShare) DeepCopyObject

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

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

func (*NFSShare) GetCondition

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

GetCondition of this NFSShare.

func (*NFSShare) GetConnectionDetailsMapping

func (tr *NFSShare) GetConnectionDetailsMapping() map[string]string

GetConnectionDetailsMapping for this NFSShare

func (*NFSShare) GetDeletionPolicy

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

GetDeletionPolicy of this NFSShare.

func (*NFSShare) GetID

func (tr *NFSShare) GetID() string

GetID returns ID of underlying Terraform resource of this NFSShare

func (*NFSShare) GetInitParameters

func (tr *NFSShare) GetInitParameters() (map[string]any, error)

GetInitParameters of this NFSShare

func (*NFSShare) GetManagementPolicies

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

GetManagementPolicies of this NFSShare.

func (*NFSShare) GetMergedParameters

func (tr *NFSShare) GetMergedParameters(shouldMergeInitProvider bool) (map[string]any, error)

GetInitParameters of this NFSShare

func (*NFSShare) GetObservation

func (tr *NFSShare) GetObservation() (map[string]any, error)

GetObservation of this NFSShare

func (*NFSShare) GetParameters

func (tr *NFSShare) GetParameters() (map[string]any, error)

GetParameters of this NFSShare

func (*NFSShare) GetProviderConfigReference

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

GetProviderConfigReference of this NFSShare.

func (*NFSShare) GetPublishConnectionDetailsTo

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

GetPublishConnectionDetailsTo of this NFSShare.

func (*NFSShare) GetTerraformResourceType

func (mg *NFSShare) GetTerraformResourceType() string

GetTerraformResourceType returns Terraform resource type for this NFSShare

func (*NFSShare) GetTerraformSchemaVersion

func (tr *NFSShare) GetTerraformSchemaVersion() int

GetTerraformSchemaVersion returns the associated Terraform schema version

func (*NFSShare) GetWriteConnectionSecretToReference

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

GetWriteConnectionSecretToReference of this NFSShare.

func (*NFSShare) Hub

func (tr *NFSShare) Hub()

Hub marks this type as a conversion hub.

func (*NFSShare) LateInitialize

func (tr *NFSShare) LateInitialize(attrs []byte) (bool, error)

LateInitialize this NFSShare using its observed tfState. returns True if there are any spec changes for the resource.

func (*NFSShare) ResolveReferences

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

ResolveReferences of this NFSShare.

func (*NFSShare) SetConditions

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

SetConditions of this NFSShare.

func (*NFSShare) SetDeletionPolicy

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

SetDeletionPolicy of this NFSShare.

func (*NFSShare) SetManagementPolicies

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

SetManagementPolicies of this NFSShare.

func (*NFSShare) SetObservation

func (tr *NFSShare) SetObservation(obs map[string]any) error

SetObservation for this NFSShare

func (*NFSShare) SetParameters

func (tr *NFSShare) SetParameters(params map[string]any) error

SetParameters for this NFSShare

func (*NFSShare) SetProviderConfigReference

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

SetProviderConfigReference of this NFSShare.

func (*NFSShare) SetPublishConnectionDetailsTo

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

SetPublishConnectionDetailsTo of this NFSShare.

func (*NFSShare) SetWriteConnectionSecretToReference

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

SetWriteConnectionSecretToReference of this NFSShare.

type NFSShareInitParameters

type NFSShareInitParameters struct {

	// The groups of clients are the systems connecting to the Network File Storage cluster. Each group includes:
	// The groups of clients are the systems connecting to the Network File Storage cluster.
	ClientGroups []ClientGroupsInitParameters `json:"clientGroups,omitempty" tf:"client_groups,omitempty"`

	// The ID of the Network File Storage Cluster.
	// The ID of the Network File Storage Cluster.
	// +crossplane:generate:reference:type=github.com/ionos-cloud/provider-upjet-ionoscloud/apis/nfs/v1alpha1.NFSCluster
	ClusterID *string `json:"clusterId,omitempty" tf:"cluster_id,omitempty"`

	// Reference to a NFSCluster in nfs to populate clusterId.
	// +kubebuilder:validation:Optional
	ClusterIDRef *v1.Reference `json:"clusterIdRef,omitempty" tf:"-"`

	// Selector for a NFSCluster in nfs to populate clusterId.
	// +kubebuilder:validation:Optional
	ClusterIDSelector *v1.Selector `json:"clusterIdSelector,omitempty" tf:"-"`

	// The group ID that will own the exported directory. If not set, anonymous (512) will be used.
	// The group ID that will own the exported directory. If not set, **anonymous** (`512`) will be used.
	GID *float64 `json:"gid,omitempty" tf:"gid,omitempty"`

	// The location of the Network File Storage Cluster.
	// The location of the Network File Storage Cluster. Available locations: 'de/fra, 'de/txl'
	Location *string `json:"location,omitempty" tf:"location,omitempty"`

	// The directory being exported.
	// The directory being exported
	Name *string `json:"name,omitempty" tf:"name,omitempty"`

	// The quota in MiB for the export. The quota can restrict the amount of data that can be stored within the export. The quota can be disabled using 0. Default is 0.
	// The quota in MiB for the export. The quota can restrict the amount of data that can be stored within the export. The quota can be disabled using `0`.
	Quota *float64 `json:"quota,omitempty" tf:"quota,omitempty"`

	// The user ID that will own the exported directory. If not set, anonymous (512) will be used.
	// The user ID that will own the exported directory. If not set, **anonymous** (`512`) will be used.
	UID *float64 `json:"uid,omitempty" tf:"uid,omitempty"`
}

func (*NFSShareInitParameters) DeepCopy

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

func (*NFSShareInitParameters) DeepCopyInto

func (in *NFSShareInitParameters) DeepCopyInto(out *NFSShareInitParameters)

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

type NFSShareList

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

NFSShareList contains a list of NFSShares

func (*NFSShareList) DeepCopy

func (in *NFSShareList) DeepCopy() *NFSShareList

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

func (*NFSShareList) DeepCopyInto

func (in *NFSShareList) DeepCopyInto(out *NFSShareList)

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

func (*NFSShareList) DeepCopyObject

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

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

func (*NFSShareList) GetItems

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

GetItems of this NFSShareList.

type NFSShareObservation

type NFSShareObservation struct {

	// The groups of clients are the systems connecting to the Network File Storage cluster. Each group includes:
	// The groups of clients are the systems connecting to the Network File Storage cluster.
	ClientGroups []ClientGroupsObservation `json:"clientGroups,omitempty" tf:"client_groups,omitempty"`

	// The ID of the Network File Storage Cluster.
	// The ID of the Network File Storage Cluster.
	ClusterID *string `json:"clusterId,omitempty" tf:"cluster_id,omitempty"`

	// The group ID that will own the exported directory. If not set, anonymous (512) will be used.
	// The group ID that will own the exported directory. If not set, **anonymous** (`512`) will be used.
	GID *float64 `json:"gid,omitempty" tf:"gid,omitempty"`

	ID *string `json:"id,omitempty" tf:"id,omitempty"`

	// The location of the Network File Storage Cluster.
	// The location of the Network File Storage Cluster. Available locations: 'de/fra, 'de/txl'
	Location *string `json:"location,omitempty" tf:"location,omitempty"`

	// Path to the NFS export. The NFS path is the path to the directory being exported.
	NFSPath *string `json:"nfsPath,omitempty" tf:"nfs_path,omitempty"`

	// The directory being exported.
	// The directory being exported
	Name *string `json:"name,omitempty" tf:"name,omitempty"`

	// The quota in MiB for the export. The quota can restrict the amount of data that can be stored within the export. The quota can be disabled using 0. Default is 0.
	// The quota in MiB for the export. The quota can restrict the amount of data that can be stored within the export. The quota can be disabled using `0`.
	Quota *float64 `json:"quota,omitempty" tf:"quota,omitempty"`

	// The user ID that will own the exported directory. If not set, anonymous (512) will be used.
	// The user ID that will own the exported directory. If not set, **anonymous** (`512`) will be used.
	UID *float64 `json:"uid,omitempty" tf:"uid,omitempty"`
}

func (*NFSShareObservation) DeepCopy

func (in *NFSShareObservation) DeepCopy() *NFSShareObservation

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

func (*NFSShareObservation) DeepCopyInto

func (in *NFSShareObservation) DeepCopyInto(out *NFSShareObservation)

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

type NFSShareParameters

type NFSShareParameters struct {

	// The groups of clients are the systems connecting to the Network File Storage cluster. Each group includes:
	// The groups of clients are the systems connecting to the Network File Storage cluster.
	// +kubebuilder:validation:Optional
	ClientGroups []ClientGroupsParameters `json:"clientGroups,omitempty" tf:"client_groups,omitempty"`

	// The ID of the Network File Storage Cluster.
	// The ID of the Network File Storage Cluster.
	// +crossplane:generate:reference:type=github.com/ionos-cloud/provider-upjet-ionoscloud/apis/nfs/v1alpha1.NFSCluster
	// +kubebuilder:validation:Optional
	ClusterID *string `json:"clusterId,omitempty" tf:"cluster_id,omitempty"`

	// Reference to a NFSCluster in nfs to populate clusterId.
	// +kubebuilder:validation:Optional
	ClusterIDRef *v1.Reference `json:"clusterIdRef,omitempty" tf:"-"`

	// Selector for a NFSCluster in nfs to populate clusterId.
	// +kubebuilder:validation:Optional
	ClusterIDSelector *v1.Selector `json:"clusterIdSelector,omitempty" tf:"-"`

	// The group ID that will own the exported directory. If not set, anonymous (512) will be used.
	// The group ID that will own the exported directory. If not set, **anonymous** (`512`) will be used.
	// +kubebuilder:validation:Optional
	GID *float64 `json:"gid,omitempty" tf:"gid,omitempty"`

	// The location of the Network File Storage Cluster.
	// The location of the Network File Storage Cluster. Available locations: 'de/fra, 'de/txl'
	// +kubebuilder:validation:Optional
	Location *string `json:"location,omitempty" tf:"location,omitempty"`

	// The directory being exported.
	// The directory being exported
	// +kubebuilder:validation:Optional
	Name *string `json:"name,omitempty" tf:"name,omitempty"`

	// The quota in MiB for the export. The quota can restrict the amount of data that can be stored within the export. The quota can be disabled using 0. Default is 0.
	// The quota in MiB for the export. The quota can restrict the amount of data that can be stored within the export. The quota can be disabled using `0`.
	// +kubebuilder:validation:Optional
	Quota *float64 `json:"quota,omitempty" tf:"quota,omitempty"`

	// The user ID that will own the exported directory. If not set, anonymous (512) will be used.
	// The user ID that will own the exported directory. If not set, **anonymous** (`512`) will be used.
	// +kubebuilder:validation:Optional
	UID *float64 `json:"uid,omitempty" tf:"uid,omitempty"`
}

func (*NFSShareParameters) DeepCopy

func (in *NFSShareParameters) DeepCopy() *NFSShareParameters

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

func (*NFSShareParameters) DeepCopyInto

func (in *NFSShareParameters) DeepCopyInto(out *NFSShareParameters)

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

type NFSShareSpec

type NFSShareSpec struct {
	v1.ResourceSpec `json:",inline"`
	ForProvider     NFSShareParameters `json:"forProvider"`
	// THIS IS A BETA FIELD. It will be honored
	// unless the Management Policies feature flag is disabled.
	// InitProvider holds the same fields as ForProvider, with the exception
	// of Identifier and other resource reference fields. The fields that are
	// in InitProvider are merged into ForProvider when the resource is created.
	// The same fields are also added to the terraform ignore_changes hook, to
	// avoid updating them after creation. This is useful for fields that are
	// required on creation, but we do not desire to update them after creation,
	// for example because of an external controller is managing them, like an
	// autoscaler.
	InitProvider NFSShareInitParameters `json:"initProvider,omitempty"`
}

NFSShareSpec defines the desired state of NFSShare

func (*NFSShareSpec) DeepCopy

func (in *NFSShareSpec) DeepCopy() *NFSShareSpec

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

func (*NFSShareSpec) DeepCopyInto

func (in *NFSShareSpec) DeepCopyInto(out *NFSShareSpec)

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

type NFSShareStatus

type NFSShareStatus struct {
	v1.ResourceStatus `json:",inline"`
	AtProvider        NFSShareObservation `json:"atProvider,omitempty"`
}

NFSShareStatus defines the observed state of NFSShare.

func (*NFSShareStatus) DeepCopy

func (in *NFSShareStatus) DeepCopy() *NFSShareStatus

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

func (*NFSShareStatus) DeepCopyInto

func (in *NFSShareStatus) DeepCopyInto(out *NFSShareStatus)

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