v1beta2

package
v1.16.2 Latest Latest
Warning

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

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

Documentation

Overview

+kubebuilder:object:generate=true +groupName=fsx.aws.upbound.io +versionName=v1beta2

Index

Constants

View Source
const (
	CRDGroup   = "fsx.aws.upbound.io"
	CRDVersion = "v1beta2"
)

Package type metadata.

Variables

View Source
var (
	DataRepositoryAssociation_Kind             = "DataRepositoryAssociation"
	DataRepositoryAssociation_GroupKind        = schema.GroupKind{Group: CRDGroup, Kind: DataRepositoryAssociation_Kind}.String()
	DataRepositoryAssociation_KindAPIVersion   = DataRepositoryAssociation_Kind + "." + CRDGroupVersion.String()
	DataRepositoryAssociation_GroupVersionKind = CRDGroupVersion.WithKind(DataRepositoryAssociation_Kind)
)

Repository type metadata.

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 (
	LustreFileSystem_Kind             = "LustreFileSystem"
	LustreFileSystem_GroupKind        = schema.GroupKind{Group: CRDGroup, Kind: LustreFileSystem_Kind}.String()
	LustreFileSystem_KindAPIVersion   = LustreFileSystem_Kind + "." + CRDGroupVersion.String()
	LustreFileSystem_GroupVersionKind = CRDGroupVersion.WithKind(LustreFileSystem_Kind)
)

Repository type metadata.

View Source
var (
	OntapFileSystem_Kind             = "OntapFileSystem"
	OntapFileSystem_GroupKind        = schema.GroupKind{Group: CRDGroup, Kind: OntapFileSystem_Kind}.String()
	OntapFileSystem_KindAPIVersion   = OntapFileSystem_Kind + "." + CRDGroupVersion.String()
	OntapFileSystem_GroupVersionKind = CRDGroupVersion.WithKind(OntapFileSystem_Kind)
)

Repository type metadata.

View Source
var (
	OntapStorageVirtualMachine_Kind             = "OntapStorageVirtualMachine"
	OntapStorageVirtualMachine_GroupKind        = schema.GroupKind{Group: CRDGroup, Kind: OntapStorageVirtualMachine_Kind}.String()
	OntapStorageVirtualMachine_KindAPIVersion   = OntapStorageVirtualMachine_Kind + "." + CRDGroupVersion.String()
	OntapStorageVirtualMachine_GroupVersionKind = CRDGroupVersion.WithKind(OntapStorageVirtualMachine_Kind)
)

Repository type metadata.

View Source
var (
	WindowsFileSystem_Kind             = "WindowsFileSystem"
	WindowsFileSystem_GroupKind        = schema.GroupKind{Group: CRDGroup, Kind: WindowsFileSystem_Kind}.String()
	WindowsFileSystem_KindAPIVersion   = WindowsFileSystem_Kind + "." + CRDGroupVersion.String()
	WindowsFileSystem_GroupVersionKind = CRDGroupVersion.WithKind(WindowsFileSystem_Kind)
)

Repository type metadata.

Functions

This section is empty.

Types

type ActiveDirectoryConfigurationInitParameters

type ActiveDirectoryConfigurationInitParameters struct {

	// The NetBIOS name of the Active Directory computer object that will be created for your SVM. This is often the same as the SVM name but can be different. AWS limits to 15 characters because of standard NetBIOS naming limits.
	NetbiosName *string `json:"netbiosName,omitempty" tf:"netbios_name,omitempty"`

	// Configuration block that Amazon FSx uses to join the FSx ONTAP Storage Virtual Machine(SVM) to your Microsoft Active Directory (AD) directory. Detailed below.
	SelfManagedActiveDirectoryConfiguration *SelfManagedActiveDirectoryConfigurationInitParameters `json:"selfManagedActiveDirectoryConfiguration,omitempty" tf:"self_managed_active_directory_configuration,omitempty"`
}

func (*ActiveDirectoryConfigurationInitParameters) DeepCopy

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

func (*ActiveDirectoryConfigurationInitParameters) DeepCopyInto

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

type ActiveDirectoryConfigurationObservation

type ActiveDirectoryConfigurationObservation struct {

	// The NetBIOS name of the Active Directory computer object that will be created for your SVM. This is often the same as the SVM name but can be different. AWS limits to 15 characters because of standard NetBIOS naming limits.
	NetbiosName *string `json:"netbiosName,omitempty" tf:"netbios_name,omitempty"`

	// Configuration block that Amazon FSx uses to join the FSx ONTAP Storage Virtual Machine(SVM) to your Microsoft Active Directory (AD) directory. Detailed below.
	SelfManagedActiveDirectoryConfiguration *SelfManagedActiveDirectoryConfigurationObservation `json:"selfManagedActiveDirectoryConfiguration,omitempty" tf:"self_managed_active_directory_configuration,omitempty"`
}

func (*ActiveDirectoryConfigurationObservation) DeepCopy

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

func (*ActiveDirectoryConfigurationObservation) DeepCopyInto

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

type ActiveDirectoryConfigurationParameters

type ActiveDirectoryConfigurationParameters struct {

	// The NetBIOS name of the Active Directory computer object that will be created for your SVM. This is often the same as the SVM name but can be different. AWS limits to 15 characters because of standard NetBIOS naming limits.
	// +kubebuilder:validation:Optional
	NetbiosName *string `json:"netbiosName,omitempty" tf:"netbios_name,omitempty"`

	// Configuration block that Amazon FSx uses to join the FSx ONTAP Storage Virtual Machine(SVM) to your Microsoft Active Directory (AD) directory. Detailed below.
	// +kubebuilder:validation:Optional
	SelfManagedActiveDirectoryConfiguration *SelfManagedActiveDirectoryConfigurationParameters `json:"selfManagedActiveDirectoryConfiguration,omitempty" tf:"self_managed_active_directory_configuration,omitempty"`
}

func (*ActiveDirectoryConfigurationParameters) DeepCopy

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

func (*ActiveDirectoryConfigurationParameters) DeepCopyInto

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

type AuditLogConfigurationInitParameters

type AuditLogConfigurationInitParameters struct {

	// The Amazon Resource Name (ARN) for the destination of the audit logs. The destination can be any Amazon CloudWatch Logs log group ARN or Amazon Kinesis Data Firehose delivery stream ARN. Can be specified when file_access_audit_log_level and file_share_access_audit_log_level are not set to DISABLED. The name of the Amazon CloudWatch Logs log group must begin with the /aws/fsx prefix. The name of the Amazon Kinesis Data Firehouse delivery stream must begin with the aws-fsx prefix. If you do not provide a destination in audit_log_destionation, Amazon FSx will create and use a log stream in the CloudWatch Logs /aws/fsx/windows log group.
	AuditLogDestination *string `json:"auditLogDestination,omitempty" tf:"audit_log_destination,omitempty"`

	// Sets which attempt type is logged by Amazon FSx for file and folder accesses. Valid values are SUCCESS_ONLY, FAILURE_ONLY, SUCCESS_AND_FAILURE, and DISABLED. Default value is DISABLED.
	FileAccessAuditLogLevel *string `json:"fileAccessAuditLogLevel,omitempty" tf:"file_access_audit_log_level,omitempty"`

	// Sets which attempt type is logged by Amazon FSx for file share accesses. Valid values are SUCCESS_ONLY, FAILURE_ONLY, SUCCESS_AND_FAILURE, and DISABLED. Default value is DISABLED.
	FileShareAccessAuditLogLevel *string `json:"fileShareAccessAuditLogLevel,omitempty" tf:"file_share_access_audit_log_level,omitempty"`
}

func (*AuditLogConfigurationInitParameters) DeepCopy

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

func (*AuditLogConfigurationInitParameters) DeepCopyInto

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

type AuditLogConfigurationObservation

type AuditLogConfigurationObservation struct {

	// The Amazon Resource Name (ARN) for the destination of the audit logs. The destination can be any Amazon CloudWatch Logs log group ARN or Amazon Kinesis Data Firehose delivery stream ARN. Can be specified when file_access_audit_log_level and file_share_access_audit_log_level are not set to DISABLED. The name of the Amazon CloudWatch Logs log group must begin with the /aws/fsx prefix. The name of the Amazon Kinesis Data Firehouse delivery stream must begin with the aws-fsx prefix. If you do not provide a destination in audit_log_destionation, Amazon FSx will create and use a log stream in the CloudWatch Logs /aws/fsx/windows log group.
	AuditLogDestination *string `json:"auditLogDestination,omitempty" tf:"audit_log_destination,omitempty"`

	// Sets which attempt type is logged by Amazon FSx for file and folder accesses. Valid values are SUCCESS_ONLY, FAILURE_ONLY, SUCCESS_AND_FAILURE, and DISABLED. Default value is DISABLED.
	FileAccessAuditLogLevel *string `json:"fileAccessAuditLogLevel,omitempty" tf:"file_access_audit_log_level,omitempty"`

	// Sets which attempt type is logged by Amazon FSx for file share accesses. Valid values are SUCCESS_ONLY, FAILURE_ONLY, SUCCESS_AND_FAILURE, and DISABLED. Default value is DISABLED.
	FileShareAccessAuditLogLevel *string `json:"fileShareAccessAuditLogLevel,omitempty" tf:"file_share_access_audit_log_level,omitempty"`
}

func (*AuditLogConfigurationObservation) DeepCopy

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

func (*AuditLogConfigurationObservation) DeepCopyInto

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

type AuditLogConfigurationParameters

type AuditLogConfigurationParameters struct {

	// The Amazon Resource Name (ARN) for the destination of the audit logs. The destination can be any Amazon CloudWatch Logs log group ARN or Amazon Kinesis Data Firehose delivery stream ARN. Can be specified when file_access_audit_log_level and file_share_access_audit_log_level are not set to DISABLED. The name of the Amazon CloudWatch Logs log group must begin with the /aws/fsx prefix. The name of the Amazon Kinesis Data Firehouse delivery stream must begin with the aws-fsx prefix. If you do not provide a destination in audit_log_destionation, Amazon FSx will create and use a log stream in the CloudWatch Logs /aws/fsx/windows log group.
	// +kubebuilder:validation:Optional
	AuditLogDestination *string `json:"auditLogDestination,omitempty" tf:"audit_log_destination,omitempty"`

	// Sets which attempt type is logged by Amazon FSx for file and folder accesses. Valid values are SUCCESS_ONLY, FAILURE_ONLY, SUCCESS_AND_FAILURE, and DISABLED. Default value is DISABLED.
	// +kubebuilder:validation:Optional
	FileAccessAuditLogLevel *string `json:"fileAccessAuditLogLevel,omitempty" tf:"file_access_audit_log_level,omitempty"`

	// Sets which attempt type is logged by Amazon FSx for file share accesses. Valid values are SUCCESS_ONLY, FAILURE_ONLY, SUCCESS_AND_FAILURE, and DISABLED. Default value is DISABLED.
	// +kubebuilder:validation:Optional
	FileShareAccessAuditLogLevel *string `json:"fileShareAccessAuditLogLevel,omitempty" tf:"file_share_access_audit_log_level,omitempty"`
}

func (*AuditLogConfigurationParameters) DeepCopy

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

func (*AuditLogConfigurationParameters) DeepCopyInto

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

type AutoExportPolicyInitParameters

type AutoExportPolicyInitParameters struct {

	// A list of file event types to automatically export to your linked S3 bucket or import from the linked S3 bucket. Valid values are NEW, CHANGED, DELETED. Max of 3.
	Events []*string `json:"events,omitempty" tf:"events,omitempty"`
}

func (*AutoExportPolicyInitParameters) DeepCopy

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

func (*AutoExportPolicyInitParameters) DeepCopyInto

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

type AutoExportPolicyObservation

type AutoExportPolicyObservation struct {

	// A list of file event types to automatically export to your linked S3 bucket or import from the linked S3 bucket. Valid values are NEW, CHANGED, DELETED. Max of 3.
	Events []*string `json:"events,omitempty" tf:"events,omitempty"`
}

func (*AutoExportPolicyObservation) DeepCopy

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

func (*AutoExportPolicyObservation) DeepCopyInto

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

type AutoExportPolicyParameters

type AutoExportPolicyParameters struct {

	// A list of file event types to automatically export to your linked S3 bucket or import from the linked S3 bucket. Valid values are NEW, CHANGED, DELETED. Max of 3.
	// +kubebuilder:validation:Optional
	Events []*string `json:"events,omitempty" tf:"events,omitempty"`
}

func (*AutoExportPolicyParameters) DeepCopy

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

func (*AutoExportPolicyParameters) DeepCopyInto

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

type AutoImportPolicyInitParameters

type AutoImportPolicyInitParameters struct {

	// A list of file event types to automatically export to your linked S3 bucket or import from the linked S3 bucket. Valid values are NEW, CHANGED, DELETED. Max of 3.
	Events []*string `json:"events,omitempty" tf:"events,omitempty"`
}

func (*AutoImportPolicyInitParameters) DeepCopy

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

func (*AutoImportPolicyInitParameters) DeepCopyInto

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

type AutoImportPolicyObservation

type AutoImportPolicyObservation struct {

	// A list of file event types to automatically export to your linked S3 bucket or import from the linked S3 bucket. Valid values are NEW, CHANGED, DELETED. Max of 3.
	Events []*string `json:"events,omitempty" tf:"events,omitempty"`
}

func (*AutoImportPolicyObservation) DeepCopy

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

func (*AutoImportPolicyObservation) DeepCopyInto

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

type AutoImportPolicyParameters

type AutoImportPolicyParameters struct {

	// A list of file event types to automatically export to your linked S3 bucket or import from the linked S3 bucket. Valid values are NEW, CHANGED, DELETED. Max of 3.
	// +kubebuilder:validation:Optional
	Events []*string `json:"events,omitempty" tf:"events,omitempty"`
}

func (*AutoImportPolicyParameters) DeepCopy

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

func (*AutoImportPolicyParameters) DeepCopyInto

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

type DataRepositoryAssociation

type DataRepositoryAssociation 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.dataRepositoryPath) || (has(self.initProvider) && has(self.initProvider.dataRepositoryPath))",message="spec.forProvider.dataRepositoryPath is a required parameter"
	// +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.fileSystemPath) || (has(self.initProvider) && has(self.initProvider.fileSystemPath))",message="spec.forProvider.fileSystemPath is a required parameter"
	Spec   DataRepositoryAssociationSpec   `json:"spec"`
	Status DataRepositoryAssociationStatus `json:"status,omitempty"`
}

DataRepositoryAssociation is the Schema for the DataRepositoryAssociations API. Manages a FSx for Lustre Data Repository Association. +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,aws}

func (*DataRepositoryAssociation) DeepCopy

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

func (*DataRepositoryAssociation) DeepCopyInto

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

func (*DataRepositoryAssociation) DeepCopyObject

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

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

func (*DataRepositoryAssociation) GetCondition

GetCondition of this DataRepositoryAssociation.

func (*DataRepositoryAssociation) GetConnectionDetailsMapping

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

GetConnectionDetailsMapping for this DataRepositoryAssociation

func (*DataRepositoryAssociation) GetDeletionPolicy

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

GetDeletionPolicy of this DataRepositoryAssociation.

func (*DataRepositoryAssociation) GetID

func (tr *DataRepositoryAssociation) GetID() string

GetID returns ID of underlying Terraform resource of this DataRepositoryAssociation

func (*DataRepositoryAssociation) GetInitParameters

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

GetInitParameters of this DataRepositoryAssociation

func (*DataRepositoryAssociation) GetManagementPolicies

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

GetManagementPolicies of this DataRepositoryAssociation.

func (*DataRepositoryAssociation) GetMergedParameters

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

GetInitParameters of this DataRepositoryAssociation

func (*DataRepositoryAssociation) GetObservation

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

GetObservation of this DataRepositoryAssociation

func (*DataRepositoryAssociation) GetParameters

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

GetParameters of this DataRepositoryAssociation

func (*DataRepositoryAssociation) GetProviderConfigReference

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

GetProviderConfigReference of this DataRepositoryAssociation.

func (*DataRepositoryAssociation) GetPublishConnectionDetailsTo

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

GetPublishConnectionDetailsTo of this DataRepositoryAssociation.

func (*DataRepositoryAssociation) GetTerraformResourceType

func (mg *DataRepositoryAssociation) GetTerraformResourceType() string

GetTerraformResourceType returns Terraform resource type for this DataRepositoryAssociation

func (*DataRepositoryAssociation) GetTerraformSchemaVersion

func (tr *DataRepositoryAssociation) GetTerraformSchemaVersion() int

GetTerraformSchemaVersion returns the associated Terraform schema version

func (*DataRepositoryAssociation) GetWriteConnectionSecretToReference

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

GetWriteConnectionSecretToReference of this DataRepositoryAssociation.

func (*DataRepositoryAssociation) Hub

func (tr *DataRepositoryAssociation) Hub()

Hub marks this type as a conversion hub.

func (*DataRepositoryAssociation) LateInitialize

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

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

func (*DataRepositoryAssociation) ResolveReferences

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

func (*DataRepositoryAssociation) SetConditions

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

SetConditions of this DataRepositoryAssociation.

func (*DataRepositoryAssociation) SetDeletionPolicy

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

SetDeletionPolicy of this DataRepositoryAssociation.

func (*DataRepositoryAssociation) SetManagementPolicies

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

SetManagementPolicies of this DataRepositoryAssociation.

func (*DataRepositoryAssociation) SetObservation

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

SetObservation for this DataRepositoryAssociation

func (*DataRepositoryAssociation) SetParameters

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

SetParameters for this DataRepositoryAssociation

func (*DataRepositoryAssociation) SetProviderConfigReference

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

SetProviderConfigReference of this DataRepositoryAssociation.

func (*DataRepositoryAssociation) SetPublishConnectionDetailsTo

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

SetPublishConnectionDetailsTo of this DataRepositoryAssociation.

func (*DataRepositoryAssociation) SetWriteConnectionSecretToReference

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

SetWriteConnectionSecretToReference of this DataRepositoryAssociation.

type DataRepositoryAssociationInitParameters

type DataRepositoryAssociationInitParameters struct {

	// Set to true to run an import data repository task to import metadata from the data repository to the file system after the data repository association is created. Defaults to false.
	BatchImportMetaDataOnCreate *bool `json:"batchImportMetaDataOnCreate,omitempty" tf:"batch_import_meta_data_on_create,omitempty"`

	// The path to the Amazon S3 data repository that will be linked to the file system. The path must be an S3 bucket s3://myBucket/myPrefix/. This path specifies where in the S3 data repository files will be imported from or exported to. The same S3 bucket cannot be linked more than once to the same file system.
	DataRepositoryPath *string `json:"dataRepositoryPath,omitempty" tf:"data_repository_path,omitempty"`

	// Set to true to delete files from the file system upon deleting this data repository association. Defaults to false.
	DeleteDataInFilesystem *bool `json:"deleteDataInFilesystem,omitempty" tf:"delete_data_in_filesystem,omitempty"`

	// The ID of the Amazon FSx file system to on which to create a data repository association.
	// +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/fsx/v1beta2.LustreFileSystem
	// +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractResourceID()
	FileSystemID *string `json:"fileSystemId,omitempty" tf:"file_system_id,omitempty"`

	// Reference to a LustreFileSystem in fsx to populate fileSystemId.
	// +kubebuilder:validation:Optional
	FileSystemIDRef *v1.Reference `json:"fileSystemIdRef,omitempty" tf:"-"`

	// Selector for a LustreFileSystem in fsx to populate fileSystemId.
	// +kubebuilder:validation:Optional
	FileSystemIDSelector *v1.Selector `json:"fileSystemIdSelector,omitempty" tf:"-"`

	// A path on the file system that points to a high-level directory (such as /ns1/) or subdirectory (such as /ns1/subdir/) that will be mapped 1-1 with data_repository_path. The leading forward slash in the name is required. Two data repository associations cannot have overlapping file system paths. For example, if a data repository is associated with file system path /ns1/, then you cannot link another data repository with file system path /ns1/ns2. This path specifies where in your file system files will be exported from or imported to. This file system directory can be linked to only one Amazon S3 bucket, and no other S3 bucket can be linked to the directory.
	FileSystemPath *string `json:"fileSystemPath,omitempty" tf:"file_system_path,omitempty"`

	// For files imported from a data repository, this value determines the stripe count and maximum amount of data per file (in MiB) stored on a single physical disk. The maximum number of disks that a single file can be striped across is limited by the total number of disks that make up the file system.
	ImportedFileChunkSize *float64 `json:"importedFileChunkSize,omitempty" tf:"imported_file_chunk_size,omitempty"`

	// See the s3 configuration block. Max of 1.
	// The configuration for an Amazon S3 data repository linked to an Amazon FSx Lustre file system with a data repository association. The configuration defines which file events (new, changed, or deleted files or directories) are automatically imported from the linked data repository to the file system or automatically exported from the file system to the data repository.
	S3 *S3InitParameters `json:"s3,omitempty" tf:"s3,omitempty"`

	// Key-value map of resource tags.
	// +mapType=granular
	Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"`
}

func (*DataRepositoryAssociationInitParameters) DeepCopy

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

func (*DataRepositoryAssociationInitParameters) DeepCopyInto

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

type DataRepositoryAssociationList

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

DataRepositoryAssociationList contains a list of DataRepositoryAssociations

func (*DataRepositoryAssociationList) DeepCopy

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

func (*DataRepositoryAssociationList) DeepCopyInto

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

func (*DataRepositoryAssociationList) DeepCopyObject

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

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

func (*DataRepositoryAssociationList) GetItems

GetItems of this DataRepositoryAssociationList.

type DataRepositoryAssociationObservation

type DataRepositoryAssociationObservation struct {

	// Amazon Resource Name of the file system.
	Arn *string `json:"arn,omitempty" tf:"arn,omitempty"`

	// Identifier of the data repository association, e.g., dra-12345678
	AssociationID *string `json:"associationId,omitempty" tf:"association_id,omitempty"`

	// Set to true to run an import data repository task to import metadata from the data repository to the file system after the data repository association is created. Defaults to false.
	BatchImportMetaDataOnCreate *bool `json:"batchImportMetaDataOnCreate,omitempty" tf:"batch_import_meta_data_on_create,omitempty"`

	// The path to the Amazon S3 data repository that will be linked to the file system. The path must be an S3 bucket s3://myBucket/myPrefix/. This path specifies where in the S3 data repository files will be imported from or exported to. The same S3 bucket cannot be linked more than once to the same file system.
	DataRepositoryPath *string `json:"dataRepositoryPath,omitempty" tf:"data_repository_path,omitempty"`

	// Set to true to delete files from the file system upon deleting this data repository association. Defaults to false.
	DeleteDataInFilesystem *bool `json:"deleteDataInFilesystem,omitempty" tf:"delete_data_in_filesystem,omitempty"`

	// The ID of the Amazon FSx file system to on which to create a data repository association.
	FileSystemID *string `json:"fileSystemId,omitempty" tf:"file_system_id,omitempty"`

	// A path on the file system that points to a high-level directory (such as /ns1/) or subdirectory (such as /ns1/subdir/) that will be mapped 1-1 with data_repository_path. The leading forward slash in the name is required. Two data repository associations cannot have overlapping file system paths. For example, if a data repository is associated with file system path /ns1/, then you cannot link another data repository with file system path /ns1/ns2. This path specifies where in your file system files will be exported from or imported to. This file system directory can be linked to only one Amazon S3 bucket, and no other S3 bucket can be linked to the directory.
	FileSystemPath *string `json:"fileSystemPath,omitempty" tf:"file_system_path,omitempty"`

	// Identifier of the data repository association, e.g., dra-12345678
	ID *string `json:"id,omitempty" tf:"id,omitempty"`

	// For files imported from a data repository, this value determines the stripe count and maximum amount of data per file (in MiB) stored on a single physical disk. The maximum number of disks that a single file can be striped across is limited by the total number of disks that make up the file system.
	ImportedFileChunkSize *float64 `json:"importedFileChunkSize,omitempty" tf:"imported_file_chunk_size,omitempty"`

	// See the s3 configuration block. Max of 1.
	// The configuration for an Amazon S3 data repository linked to an Amazon FSx Lustre file system with a data repository association. The configuration defines which file events (new, changed, or deleted files or directories) are automatically imported from the linked data repository to the file system or automatically exported from the file system to the data repository.
	S3 *S3Observation `json:"s3,omitempty" tf:"s3,omitempty"`

	// Key-value map of resource tags.
	// +mapType=granular
	Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"`

	// A map of tags assigned to the resource, including those inherited from the provider default_tags configuration block.
	// +mapType=granular
	TagsAll map[string]*string `json:"tagsAll,omitempty" tf:"tags_all,omitempty"`
}

func (*DataRepositoryAssociationObservation) DeepCopy

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

func (*DataRepositoryAssociationObservation) DeepCopyInto

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

type DataRepositoryAssociationParameters

type DataRepositoryAssociationParameters struct {

	// Set to true to run an import data repository task to import metadata from the data repository to the file system after the data repository association is created. Defaults to false.
	// +kubebuilder:validation:Optional
	BatchImportMetaDataOnCreate *bool `json:"batchImportMetaDataOnCreate,omitempty" tf:"batch_import_meta_data_on_create,omitempty"`

	// The path to the Amazon S3 data repository that will be linked to the file system. The path must be an S3 bucket s3://myBucket/myPrefix/. This path specifies where in the S3 data repository files will be imported from or exported to. The same S3 bucket cannot be linked more than once to the same file system.
	// +kubebuilder:validation:Optional
	DataRepositoryPath *string `json:"dataRepositoryPath,omitempty" tf:"data_repository_path,omitempty"`

	// Set to true to delete files from the file system upon deleting this data repository association. Defaults to false.
	// +kubebuilder:validation:Optional
	DeleteDataInFilesystem *bool `json:"deleteDataInFilesystem,omitempty" tf:"delete_data_in_filesystem,omitempty"`

	// The ID of the Amazon FSx file system to on which to create a data repository association.
	// +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/fsx/v1beta2.LustreFileSystem
	// +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractResourceID()
	// +kubebuilder:validation:Optional
	FileSystemID *string `json:"fileSystemId,omitempty" tf:"file_system_id,omitempty"`

	// Reference to a LustreFileSystem in fsx to populate fileSystemId.
	// +kubebuilder:validation:Optional
	FileSystemIDRef *v1.Reference `json:"fileSystemIdRef,omitempty" tf:"-"`

	// Selector for a LustreFileSystem in fsx to populate fileSystemId.
	// +kubebuilder:validation:Optional
	FileSystemIDSelector *v1.Selector `json:"fileSystemIdSelector,omitempty" tf:"-"`

	// A path on the file system that points to a high-level directory (such as /ns1/) or subdirectory (such as /ns1/subdir/) that will be mapped 1-1 with data_repository_path. The leading forward slash in the name is required. Two data repository associations cannot have overlapping file system paths. For example, if a data repository is associated with file system path /ns1/, then you cannot link another data repository with file system path /ns1/ns2. This path specifies where in your file system files will be exported from or imported to. This file system directory can be linked to only one Amazon S3 bucket, and no other S3 bucket can be linked to the directory.
	// +kubebuilder:validation:Optional
	FileSystemPath *string `json:"fileSystemPath,omitempty" tf:"file_system_path,omitempty"`

	// For files imported from a data repository, this value determines the stripe count and maximum amount of data per file (in MiB) stored on a single physical disk. The maximum number of disks that a single file can be striped across is limited by the total number of disks that make up the file system.
	// +kubebuilder:validation:Optional
	ImportedFileChunkSize *float64 `json:"importedFileChunkSize,omitempty" tf:"imported_file_chunk_size,omitempty"`

	// Region is the region you'd like your resource to be created in.
	// +upjet:crd:field:TFTag=-
	// +kubebuilder:validation:Required
	Region *string `json:"region" tf:"-"`

	// See the s3 configuration block. Max of 1.
	// The configuration for an Amazon S3 data repository linked to an Amazon FSx Lustre file system with a data repository association. The configuration defines which file events (new, changed, or deleted files or directories) are automatically imported from the linked data repository to the file system or automatically exported from the file system to the data repository.
	// +kubebuilder:validation:Optional
	S3 *S3Parameters `json:"s3,omitempty" tf:"s3,omitempty"`

	// Key-value map of resource tags.
	// +kubebuilder:validation:Optional
	// +mapType=granular
	Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"`
}

func (*DataRepositoryAssociationParameters) DeepCopy

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

func (*DataRepositoryAssociationParameters) DeepCopyInto

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

type DataRepositoryAssociationSpec

type DataRepositoryAssociationSpec struct {
	v1.ResourceSpec `json:",inline"`
	ForProvider     DataRepositoryAssociationParameters `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 DataRepositoryAssociationInitParameters `json:"initProvider,omitempty"`
}

DataRepositoryAssociationSpec defines the desired state of DataRepositoryAssociation

func (*DataRepositoryAssociationSpec) DeepCopy

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

func (*DataRepositoryAssociationSpec) DeepCopyInto

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

type DataRepositoryAssociationStatus

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

DataRepositoryAssociationStatus defines the observed state of DataRepositoryAssociation.

func (*DataRepositoryAssociationStatus) DeepCopy

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

func (*DataRepositoryAssociationStatus) DeepCopyInto

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

type DiskIopsConfigurationInitParameters

type DiskIopsConfigurationInitParameters struct {

	// - The total number of SSD IOPS provisioned for the file system.
	Iops *float64 `json:"iops,omitempty" tf:"iops,omitempty"`

	// - Specifies whether the number of IOPS for the file system is using the system. Valid values are AUTOMATIC and USER_PROVISIONED. Default value is AUTOMATIC.
	Mode *string `json:"mode,omitempty" tf:"mode,omitempty"`
}

func (*DiskIopsConfigurationInitParameters) DeepCopy

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

func (*DiskIopsConfigurationInitParameters) DeepCopyInto

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

type DiskIopsConfigurationObservation

type DiskIopsConfigurationObservation struct {

	// - The total number of SSD IOPS provisioned for the file system.
	Iops *float64 `json:"iops,omitempty" tf:"iops,omitempty"`

	// - Specifies whether the number of IOPS for the file system is using the system. Valid values are AUTOMATIC and USER_PROVISIONED. Default value is AUTOMATIC.
	Mode *string `json:"mode,omitempty" tf:"mode,omitempty"`
}

func (*DiskIopsConfigurationObservation) DeepCopy

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

func (*DiskIopsConfigurationObservation) DeepCopyInto

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

type DiskIopsConfigurationParameters

type DiskIopsConfigurationParameters struct {

	// - The total number of SSD IOPS provisioned for the file system.
	// +kubebuilder:validation:Optional
	Iops *float64 `json:"iops,omitempty" tf:"iops,omitempty"`

	// - Specifies whether the number of IOPS for the file system is using the system. Valid values are AUTOMATIC and USER_PROVISIONED. Default value is AUTOMATIC.
	// +kubebuilder:validation:Optional
	Mode *string `json:"mode,omitempty" tf:"mode,omitempty"`
}

func (*DiskIopsConfigurationParameters) DeepCopy

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

func (*DiskIopsConfigurationParameters) DeepCopyInto

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

type EndpointsInitParameters

type EndpointsInitParameters struct {
}

func (*EndpointsInitParameters) DeepCopy

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

func (*EndpointsInitParameters) DeepCopyInto

func (in *EndpointsInitParameters) DeepCopyInto(out *EndpointsInitParameters)

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

type EndpointsManagementInitParameters

type EndpointsManagementInitParameters struct {
}

func (*EndpointsManagementInitParameters) DeepCopy

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

func (*EndpointsManagementInitParameters) DeepCopyInto

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

type EndpointsManagementObservation

type EndpointsManagementObservation struct {

	// The Domain Name Service (DNS) name for the storage virtual machine. You can mount your storage virtual machine using its DNS name.
	DNSName *string `json:"dnsName,omitempty" tf:"dns_name,omitempty"`

	// IP addresses of the storage virtual machine endpoint.
	// +listType=set
	IPAddresses []*string `json:"ipAddresses,omitempty" tf:"ip_addresses,omitempty"`
}

func (*EndpointsManagementObservation) DeepCopy

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

func (*EndpointsManagementObservation) DeepCopyInto

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

type EndpointsManagementParameters

type EndpointsManagementParameters struct {
}

func (*EndpointsManagementParameters) DeepCopy

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

func (*EndpointsManagementParameters) DeepCopyInto

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

type EndpointsObservation

type EndpointsObservation struct {

	// An endpoint for managing your file system by setting up NetApp SnapMirror with other ONTAP systems. See Endpoint.
	Intercluster []InterclusterObservation `json:"intercluster,omitempty" tf:"intercluster,omitempty"`

	// An endpoint for managing your file system using the NetApp ONTAP CLI and NetApp ONTAP API. See Endpoint.
	Management []ManagementObservation `json:"management,omitempty" tf:"management,omitempty"`
}

func (*EndpointsObservation) DeepCopy

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

func (*EndpointsObservation) DeepCopyInto

func (in *EndpointsObservation) DeepCopyInto(out *EndpointsObservation)

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

type EndpointsParameters

type EndpointsParameters struct {
}

func (*EndpointsParameters) DeepCopy

func (in *EndpointsParameters) DeepCopy() *EndpointsParameters

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

func (*EndpointsParameters) DeepCopyInto

func (in *EndpointsParameters) DeepCopyInto(out *EndpointsParameters)

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

type ISCSIInitParameters

type ISCSIInitParameters struct {
}

func (*ISCSIInitParameters) DeepCopy

func (in *ISCSIInitParameters) DeepCopy() *ISCSIInitParameters

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

func (*ISCSIInitParameters) DeepCopyInto

func (in *ISCSIInitParameters) DeepCopyInto(out *ISCSIInitParameters)

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

type ISCSIObservation

type ISCSIObservation struct {

	// The Domain Name Service (DNS) name for the storage virtual machine. You can mount your storage virtual machine using its DNS name.
	DNSName *string `json:"dnsName,omitempty" tf:"dns_name,omitempty"`

	// IP addresses of the storage virtual machine endpoint.
	// +listType=set
	IPAddresses []*string `json:"ipAddresses,omitempty" tf:"ip_addresses,omitempty"`
}

func (*ISCSIObservation) DeepCopy

func (in *ISCSIObservation) DeepCopy() *ISCSIObservation

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

func (*ISCSIObservation) DeepCopyInto

func (in *ISCSIObservation) DeepCopyInto(out *ISCSIObservation)

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

type ISCSIParameters

type ISCSIParameters struct {
}

func (*ISCSIParameters) DeepCopy

func (in *ISCSIParameters) DeepCopy() *ISCSIParameters

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

func (*ISCSIParameters) DeepCopyInto

func (in *ISCSIParameters) DeepCopyInto(out *ISCSIParameters)

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

type InterclusterInitParameters

type InterclusterInitParameters struct {
}

func (*InterclusterInitParameters) DeepCopy

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

func (*InterclusterInitParameters) DeepCopyInto

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

type InterclusterObservation

type InterclusterObservation struct {

	// DNS name for the file system.
	DNSName *string `json:"dnsName,omitempty" tf:"dns_name,omitempty"`

	// IP addresses of the file system endpoint.
	// +listType=set
	IPAddresses []*string `json:"ipAddresses,omitempty" tf:"ip_addresses,omitempty"`
}

func (*InterclusterObservation) DeepCopy

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

func (*InterclusterObservation) DeepCopyInto

func (in *InterclusterObservation) DeepCopyInto(out *InterclusterObservation)

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

type InterclusterParameters

type InterclusterParameters struct {
}

func (*InterclusterParameters) DeepCopy

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

func (*InterclusterParameters) DeepCopyInto

func (in *InterclusterParameters) DeepCopyInto(out *InterclusterParameters)

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

type LogConfigurationInitParameters

type LogConfigurationInitParameters struct {

	// The Amazon Resource Name (ARN) that specifies the destination of the logs. The name of the Amazon CloudWatch Logs log group must begin with the /aws/fsx prefix. If you do not provide a destination, Amazon FSx will create and use a log stream in the CloudWatch Logs /aws/fsx/lustre log group.
	Destination *string `json:"destination,omitempty" tf:"destination,omitempty"`

	// Sets which data repository events are logged by Amazon FSx. Valid values are WARN_ONLY, FAILURE_ONLY, ERROR_ONLY, WARN_ERROR and DISABLED. Default value is DISABLED.
	Level *string `json:"level,omitempty" tf:"level,omitempty"`
}

func (*LogConfigurationInitParameters) DeepCopy

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

func (*LogConfigurationInitParameters) DeepCopyInto

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

type LogConfigurationObservation

type LogConfigurationObservation struct {

	// The Amazon Resource Name (ARN) that specifies the destination of the logs. The name of the Amazon CloudWatch Logs log group must begin with the /aws/fsx prefix. If you do not provide a destination, Amazon FSx will create and use a log stream in the CloudWatch Logs /aws/fsx/lustre log group.
	Destination *string `json:"destination,omitempty" tf:"destination,omitempty"`

	// Sets which data repository events are logged by Amazon FSx. Valid values are WARN_ONLY, FAILURE_ONLY, ERROR_ONLY, WARN_ERROR and DISABLED. Default value is DISABLED.
	Level *string `json:"level,omitempty" tf:"level,omitempty"`
}

func (*LogConfigurationObservation) DeepCopy

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

func (*LogConfigurationObservation) DeepCopyInto

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

type LogConfigurationParameters

type LogConfigurationParameters struct {

	// The Amazon Resource Name (ARN) that specifies the destination of the logs. The name of the Amazon CloudWatch Logs log group must begin with the /aws/fsx prefix. If you do not provide a destination, Amazon FSx will create and use a log stream in the CloudWatch Logs /aws/fsx/lustre log group.
	// +kubebuilder:validation:Optional
	Destination *string `json:"destination,omitempty" tf:"destination,omitempty"`

	// Sets which data repository events are logged by Amazon FSx. Valid values are WARN_ONLY, FAILURE_ONLY, ERROR_ONLY, WARN_ERROR and DISABLED. Default value is DISABLED.
	// +kubebuilder:validation:Optional
	Level *string `json:"level,omitempty" tf:"level,omitempty"`
}

func (*LogConfigurationParameters) DeepCopy

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

func (*LogConfigurationParameters) DeepCopyInto

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

type LustreFileSystem

type LustreFileSystem struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	Spec              LustreFileSystemSpec   `json:"spec"`
	Status            LustreFileSystemStatus `json:"status,omitempty"`
}

LustreFileSystem is the Schema for the LustreFileSystems API. Manages a FSx Lustre File System. +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,aws}

func (*LustreFileSystem) DeepCopy

func (in *LustreFileSystem) DeepCopy() *LustreFileSystem

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

func (*LustreFileSystem) DeepCopyInto

func (in *LustreFileSystem) DeepCopyInto(out *LustreFileSystem)

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

func (*LustreFileSystem) DeepCopyObject

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

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

func (*LustreFileSystem) GetCondition

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

GetCondition of this LustreFileSystem.

func (*LustreFileSystem) GetConnectionDetailsMapping

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

GetConnectionDetailsMapping for this LustreFileSystem

func (*LustreFileSystem) GetDeletionPolicy

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

GetDeletionPolicy of this LustreFileSystem.

func (*LustreFileSystem) GetID

func (tr *LustreFileSystem) GetID() string

GetID returns ID of underlying Terraform resource of this LustreFileSystem

func (*LustreFileSystem) GetInitParameters

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

GetInitParameters of this LustreFileSystem

func (*LustreFileSystem) GetManagementPolicies

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

GetManagementPolicies of this LustreFileSystem.

func (*LustreFileSystem) GetMergedParameters

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

GetInitParameters of this LustreFileSystem

func (*LustreFileSystem) GetObservation

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

GetObservation of this LustreFileSystem

func (*LustreFileSystem) GetParameters

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

GetParameters of this LustreFileSystem

func (*LustreFileSystem) GetProviderConfigReference

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

GetProviderConfigReference of this LustreFileSystem.

func (*LustreFileSystem) GetPublishConnectionDetailsTo

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

GetPublishConnectionDetailsTo of this LustreFileSystem.

func (*LustreFileSystem) GetTerraformResourceType

func (mg *LustreFileSystem) GetTerraformResourceType() string

GetTerraformResourceType returns Terraform resource type for this LustreFileSystem

func (*LustreFileSystem) GetTerraformSchemaVersion

func (tr *LustreFileSystem) GetTerraformSchemaVersion() int

GetTerraformSchemaVersion returns the associated Terraform schema version

func (*LustreFileSystem) GetWriteConnectionSecretToReference

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

GetWriteConnectionSecretToReference of this LustreFileSystem.

func (*LustreFileSystem) Hub

func (tr *LustreFileSystem) Hub()

Hub marks this type as a conversion hub.

func (*LustreFileSystem) LateInitialize

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

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

func (*LustreFileSystem) ResolveReferences

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

ResolveReferences of this LustreFileSystem.

func (*LustreFileSystem) SetConditions

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

SetConditions of this LustreFileSystem.

func (*LustreFileSystem) SetDeletionPolicy

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

SetDeletionPolicy of this LustreFileSystem.

func (*LustreFileSystem) SetManagementPolicies

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

SetManagementPolicies of this LustreFileSystem.

func (*LustreFileSystem) SetObservation

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

SetObservation for this LustreFileSystem

func (*LustreFileSystem) SetParameters

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

SetParameters for this LustreFileSystem

func (*LustreFileSystem) SetProviderConfigReference

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

SetProviderConfigReference of this LustreFileSystem.

func (*LustreFileSystem) SetPublishConnectionDetailsTo

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

SetPublishConnectionDetailsTo of this LustreFileSystem.

func (*LustreFileSystem) SetWriteConnectionSecretToReference

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

SetWriteConnectionSecretToReference of this LustreFileSystem.

type LustreFileSystemInitParameters

type LustreFileSystemInitParameters struct {

	// How Amazon FSx keeps your file and directory listings up to date as you add or modify objects in your linked S3 bucket. see Auto Import Data Repo for more details. Only supported on PERSISTENT_1 deployment types.
	AutoImportPolicy *string `json:"autoImportPolicy,omitempty" tf:"auto_import_policy,omitempty"`

	// The number of days to retain automatic backups. Setting this to 0 disables automatic backups. You can retain automatic backups for a maximum of 90 days. only valid for PERSISTENT_1 and PERSISTENT_2 deployment_type.
	AutomaticBackupRetentionDays *float64 `json:"automaticBackupRetentionDays,omitempty" tf:"automatic_backup_retention_days,omitempty"`

	// The ID of the source backup to create the filesystem from.
	BackupID *string `json:"backupId,omitempty" tf:"backup_id,omitempty"`

	// A boolean flag indicating whether tags for the file system should be copied to backups. Applicable for PERSISTENT_1 and PERSISTENT_2 deployment_type. The default value is false.
	CopyTagsToBackups *bool `json:"copyTagsToBackups,omitempty" tf:"copy_tags_to_backups,omitempty"`

	// A recurring daily time, in the format HH:MM. HH is the zero-padded hour of the day (0-23), and MM is the zero-padded minute of the hour. For example, 05:00 specifies 5 AM daily. only valid for PERSISTENT_1 and PERSISTENT_2 deployment_type. Requires automatic_backup_retention_days to be set.
	DailyAutomaticBackupStartTime *string `json:"dailyAutomaticBackupStartTime,omitempty" tf:"daily_automatic_backup_start_time,omitempty"`

	// Sets the data compression configuration for the file system. Valid values are LZ4 and NONE. Default value is NONE. Unsetting this value reverts the compression type back to NONE.
	DataCompressionType *string `json:"dataCompressionType,omitempty" tf:"data_compression_type,omitempty"`

	// - The filesystem deployment type. One of: SCRATCH_1, SCRATCH_2, PERSISTENT_1, PERSISTENT_2.
	DeploymentType *string `json:"deploymentType,omitempty" tf:"deployment_type,omitempty"`

	// - The type of drive cache used by PERSISTENT_1 filesystems that are provisioned with HDD storage_type. Required for HDD storage_type, set to either READ or NONE.
	DriveCacheType *string `json:"driveCacheType,omitempty" tf:"drive_cache_type,omitempty"`

	// S3 URI (with optional prefix) where the root of your Amazon FSx file system is exported. Can only be specified with import_path argument and the path must use the same Amazon S3 bucket as specified in import_path. Set equal to import_path to overwrite files on export. Defaults to s3://{IMPORT BUCKET}/FSxLustre{CREATION TIMESTAMP}. Only supported on PERSISTENT_1 deployment types.
	ExportPath *string `json:"exportPath,omitempty" tf:"export_path,omitempty"`

	// Sets the Lustre version for the file system that you're creating. Valid values are 2.10 for SCRATCH_1, SCRATCH_2 and PERSISTENT_1 deployment types. Valid values for 2.12 include all deployment types.
	FileSystemTypeVersion *string `json:"fileSystemTypeVersion,omitempty" tf:"file_system_type_version,omitempty"`

	// A map of tags to apply to the file system's final backup.
	// +mapType=granular
	FinalBackupTags map[string]*string `json:"finalBackupTags,omitempty" tf:"final_backup_tags,omitempty"`

	// S3 URI (with optional prefix) that you're using as the data repository for your FSx for Lustre file system. For example, s3://example-bucket/optional-prefix/. Only supported on PERSISTENT_1 deployment types.
	ImportPath *string `json:"importPath,omitempty" tf:"import_path,omitempty"`

	// For files imported from a data repository, this value determines the stripe count and maximum amount of data per file (in MiB) stored on a single physical disk. Can only be specified with import_path argument. Defaults to 1024. Minimum of 1 and maximum of 512000. Only supported on PERSISTENT_1 deployment types.
	ImportedFileChunkSize *float64 `json:"importedFileChunkSize,omitempty" tf:"imported_file_chunk_size,omitempty"`

	// ARN for the KMS Key to encrypt the file system at rest, applicable for PERSISTENT_1 and PERSISTENT_2 deployment_type. Defaults to an AWS managed KMS Key.
	// +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/kms/v1beta1.Key
	KMSKeyID *string `json:"kmsKeyId,omitempty" tf:"kms_key_id,omitempty"`

	// Reference to a Key in kms to populate kmsKeyId.
	// +kubebuilder:validation:Optional
	KMSKeyIDRef *v1.Reference `json:"kmsKeyIdRef,omitempty" tf:"-"`

	// Selector for a Key in kms to populate kmsKeyId.
	// +kubebuilder:validation:Optional
	KMSKeyIDSelector *v1.Selector `json:"kmsKeyIdSelector,omitempty" tf:"-"`

	// The Lustre logging configuration used when creating an Amazon FSx for Lustre file system. When logging is enabled, Lustre logs error and warning events for data repositories associated with your file system to Amazon CloudWatch Logs. See log_configuration Block for details.
	LogConfiguration *LogConfigurationInitParameters `json:"logConfiguration,omitempty" tf:"log_configuration,omitempty"`

	// The Lustre metadata configuration used when creating an Amazon FSx for Lustre file system. This can be used to specify a user provisioned metadata scale. This is only supported when deployment_type is set to PERSISTENT_2. See metadata_configuration Block for details.
	MetadataConfiguration *MetadataConfigurationInitParameters `json:"metadataConfiguration,omitempty" tf:"metadata_configuration,omitempty"`

	// - Describes the amount of read and write throughput for each 1 tebibyte of storage, in MB/s/TiB, required for the PERSISTENT_1 and PERSISTENT_2 deployment_type. Valid values for PERSISTENT_1 deployment_type and SSD storage_type are 50, 100, 200. Valid values for PERSISTENT_1 deployment_type and HDD storage_type are 12, 40. Valid values for PERSISTENT_2 deployment_type and  SSD storage_type are 125, 250, 500, 1000.
	PerUnitStorageThroughput *float64 `json:"perUnitStorageThroughput,omitempty" tf:"per_unit_storage_throughput,omitempty"`

	// The Lustre root squash configuration used when creating an Amazon FSx for Lustre file system. When enabled, root squash restricts root-level access from clients that try to access your file system as a root user. See root_squash_configuration Block for details.
	RootSquashConfiguration *RootSquashConfigurationInitParameters `json:"rootSquashConfiguration,omitempty" tf:"root_squash_configuration,omitempty"`

	// References to SecurityGroup in ec2 to populate securityGroupIds.
	// +kubebuilder:validation:Optional
	SecurityGroupIDRefs []v1.Reference `json:"securityGroupIdRefs,omitempty" tf:"-"`

	// Selector for a list of SecurityGroup in ec2 to populate securityGroupIds.
	// +kubebuilder:validation:Optional
	SecurityGroupIDSelector *v1.Selector `json:"securityGroupIdSelector,omitempty" tf:"-"`

	// A list of IDs for the security groups that apply to the specified network interfaces created for file system access. These security groups will apply to all network interfaces.
	// +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/ec2/v1beta1.SecurityGroup
	// +crossplane:generate:reference:refFieldName=SecurityGroupIDRefs
	// +crossplane:generate:reference:selectorFieldName=SecurityGroupIDSelector
	// +listType=set
	SecurityGroupIds []*string `json:"securityGroupIds,omitempty" tf:"security_group_ids,omitempty"`

	// When enabled, will skip the default final backup taken when the file system is deleted. This configuration must be applied separately before attempting to delete the resource to have the desired behavior. Defaults to true.
	SkipFinalBackup *bool `json:"skipFinalBackup,omitempty" tf:"skip_final_backup,omitempty"`

	// The storage capacity (GiB) of the file system. Minimum of 1200. See more details at Allowed values for Fsx storage capacity. Update is allowed only for SCRATCH_2, PERSISTENT_1 and PERSISTENT_2 deployment types, See more details at Fsx Storage Capacity Update. Required when not creating filesystem for a backup.
	StorageCapacity *float64 `json:"storageCapacity,omitempty" tf:"storage_capacity,omitempty"`

	// - The filesystem storage type. Either SSD or HDD, defaults to SSD. HDD is only supported on PERSISTENT_1 deployment types.
	StorageType *string `json:"storageType,omitempty" tf:"storage_type,omitempty"`

	// References to Subnet in ec2 to populate subnetIds.
	// +kubebuilder:validation:Optional
	SubnetIDRefs []v1.Reference `json:"subnetIdRefs,omitempty" tf:"-"`

	// Selector for a list of Subnet in ec2 to populate subnetIds.
	// +kubebuilder:validation:Optional
	SubnetIDSelector *v1.Selector `json:"subnetIdSelector,omitempty" tf:"-"`

	// A list of IDs for the subnets that the file system will be accessible from. File systems currently support only one subnet. The file server is also launched in that subnet's Availability Zone.
	// +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/ec2/v1beta1.Subnet
	// +crossplane:generate:reference:refFieldName=SubnetIDRefs
	// +crossplane:generate:reference:selectorFieldName=SubnetIDSelector
	SubnetIds []*string `json:"subnetIds,omitempty" tf:"subnet_ids,omitempty"`

	// Key-value map of resource tags.
	// +mapType=granular
	Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"`

	// The preferred start time (in d:HH:MM format) to perform weekly maintenance, in the UTC time zone.
	WeeklyMaintenanceStartTime *string `json:"weeklyMaintenanceStartTime,omitempty" tf:"weekly_maintenance_start_time,omitempty"`
}

func (*LustreFileSystemInitParameters) DeepCopy

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

func (*LustreFileSystemInitParameters) DeepCopyInto

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

type LustreFileSystemList

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

LustreFileSystemList contains a list of LustreFileSystems

func (*LustreFileSystemList) DeepCopy

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

func (*LustreFileSystemList) DeepCopyInto

func (in *LustreFileSystemList) DeepCopyInto(out *LustreFileSystemList)

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

func (*LustreFileSystemList) DeepCopyObject

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

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

func (*LustreFileSystemList) GetItems

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

GetItems of this LustreFileSystemList.

type LustreFileSystemObservation

type LustreFileSystemObservation struct {

	// Amazon Resource Name of the file system.
	Arn *string `json:"arn,omitempty" tf:"arn,omitempty"`

	// How Amazon FSx keeps your file and directory listings up to date as you add or modify objects in your linked S3 bucket. see Auto Import Data Repo for more details. Only supported on PERSISTENT_1 deployment types.
	AutoImportPolicy *string `json:"autoImportPolicy,omitempty" tf:"auto_import_policy,omitempty"`

	// The number of days to retain automatic backups. Setting this to 0 disables automatic backups. You can retain automatic backups for a maximum of 90 days. only valid for PERSISTENT_1 and PERSISTENT_2 deployment_type.
	AutomaticBackupRetentionDays *float64 `json:"automaticBackupRetentionDays,omitempty" tf:"automatic_backup_retention_days,omitempty"`

	// The ID of the source backup to create the filesystem from.
	BackupID *string `json:"backupId,omitempty" tf:"backup_id,omitempty"`

	// A boolean flag indicating whether tags for the file system should be copied to backups. Applicable for PERSISTENT_1 and PERSISTENT_2 deployment_type. The default value is false.
	CopyTagsToBackups *bool `json:"copyTagsToBackups,omitempty" tf:"copy_tags_to_backups,omitempty"`

	// DNS name for the file system, e.g., fs-12345678.fsx.us-west-2.amazonaws.com
	DNSName *string `json:"dnsName,omitempty" tf:"dns_name,omitempty"`

	// A recurring daily time, in the format HH:MM. HH is the zero-padded hour of the day (0-23), and MM is the zero-padded minute of the hour. For example, 05:00 specifies 5 AM daily. only valid for PERSISTENT_1 and PERSISTENT_2 deployment_type. Requires automatic_backup_retention_days to be set.
	DailyAutomaticBackupStartTime *string `json:"dailyAutomaticBackupStartTime,omitempty" tf:"daily_automatic_backup_start_time,omitempty"`

	// Sets the data compression configuration for the file system. Valid values are LZ4 and NONE. Default value is NONE. Unsetting this value reverts the compression type back to NONE.
	DataCompressionType *string `json:"dataCompressionType,omitempty" tf:"data_compression_type,omitempty"`

	// - The filesystem deployment type. One of: SCRATCH_1, SCRATCH_2, PERSISTENT_1, PERSISTENT_2.
	DeploymentType *string `json:"deploymentType,omitempty" tf:"deployment_type,omitempty"`

	// - The type of drive cache used by PERSISTENT_1 filesystems that are provisioned with HDD storage_type. Required for HDD storage_type, set to either READ or NONE.
	DriveCacheType *string `json:"driveCacheType,omitempty" tf:"drive_cache_type,omitempty"`

	// S3 URI (with optional prefix) where the root of your Amazon FSx file system is exported. Can only be specified with import_path argument and the path must use the same Amazon S3 bucket as specified in import_path. Set equal to import_path to overwrite files on export. Defaults to s3://{IMPORT BUCKET}/FSxLustre{CREATION TIMESTAMP}. Only supported on PERSISTENT_1 deployment types.
	ExportPath *string `json:"exportPath,omitempty" tf:"export_path,omitempty"`

	// Sets the Lustre version for the file system that you're creating. Valid values are 2.10 for SCRATCH_1, SCRATCH_2 and PERSISTENT_1 deployment types. Valid values for 2.12 include all deployment types.
	FileSystemTypeVersion *string `json:"fileSystemTypeVersion,omitempty" tf:"file_system_type_version,omitempty"`

	// A map of tags to apply to the file system's final backup.
	// +mapType=granular
	FinalBackupTags map[string]*string `json:"finalBackupTags,omitempty" tf:"final_backup_tags,omitempty"`

	// Identifier of the file system, e.g., fs-12345678
	ID *string `json:"id,omitempty" tf:"id,omitempty"`

	// S3 URI (with optional prefix) that you're using as the data repository for your FSx for Lustre file system. For example, s3://example-bucket/optional-prefix/. Only supported on PERSISTENT_1 deployment types.
	ImportPath *string `json:"importPath,omitempty" tf:"import_path,omitempty"`

	// For files imported from a data repository, this value determines the stripe count and maximum amount of data per file (in MiB) stored on a single physical disk. Can only be specified with import_path argument. Defaults to 1024. Minimum of 1 and maximum of 512000. Only supported on PERSISTENT_1 deployment types.
	ImportedFileChunkSize *float64 `json:"importedFileChunkSize,omitempty" tf:"imported_file_chunk_size,omitempty"`

	// ARN for the KMS Key to encrypt the file system at rest, applicable for PERSISTENT_1 and PERSISTENT_2 deployment_type. Defaults to an AWS managed KMS Key.
	KMSKeyID *string `json:"kmsKeyId,omitempty" tf:"kms_key_id,omitempty"`

	// The Lustre logging configuration used when creating an Amazon FSx for Lustre file system. When logging is enabled, Lustre logs error and warning events for data repositories associated with your file system to Amazon CloudWatch Logs. See log_configuration Block for details.
	LogConfiguration *LogConfigurationObservation `json:"logConfiguration,omitempty" tf:"log_configuration,omitempty"`

	// The Lustre metadata configuration used when creating an Amazon FSx for Lustre file system. This can be used to specify a user provisioned metadata scale. This is only supported when deployment_type is set to PERSISTENT_2. See metadata_configuration Block for details.
	MetadataConfiguration *MetadataConfigurationObservation `json:"metadataConfiguration,omitempty" tf:"metadata_configuration,omitempty"`

	// The value to be used when mounting the filesystem.
	MountName *string `json:"mountName,omitempty" tf:"mount_name,omitempty"`

	// Set of Elastic Network Interface identifiers from which the file system is accessible. As explained in the documentation, the first network interface returned is the primary network interface.
	NetworkInterfaceIds []*string `json:"networkInterfaceIds,omitempty" tf:"network_interface_ids,omitempty"`

	// AWS account identifier that created the file system.
	OwnerID *string `json:"ownerId,omitempty" tf:"owner_id,omitempty"`

	// - Describes the amount of read and write throughput for each 1 tebibyte of storage, in MB/s/TiB, required for the PERSISTENT_1 and PERSISTENT_2 deployment_type. Valid values for PERSISTENT_1 deployment_type and SSD storage_type are 50, 100, 200. Valid values for PERSISTENT_1 deployment_type and HDD storage_type are 12, 40. Valid values for PERSISTENT_2 deployment_type and  SSD storage_type are 125, 250, 500, 1000.
	PerUnitStorageThroughput *float64 `json:"perUnitStorageThroughput,omitempty" tf:"per_unit_storage_throughput,omitempty"`

	// The Lustre root squash configuration used when creating an Amazon FSx for Lustre file system. When enabled, root squash restricts root-level access from clients that try to access your file system as a root user. See root_squash_configuration Block for details.
	RootSquashConfiguration *RootSquashConfigurationObservation `json:"rootSquashConfiguration,omitempty" tf:"root_squash_configuration,omitempty"`

	// A list of IDs for the security groups that apply to the specified network interfaces created for file system access. These security groups will apply to all network interfaces.
	// +listType=set
	SecurityGroupIds []*string `json:"securityGroupIds,omitempty" tf:"security_group_ids,omitempty"`

	// When enabled, will skip the default final backup taken when the file system is deleted. This configuration must be applied separately before attempting to delete the resource to have the desired behavior. Defaults to true.
	SkipFinalBackup *bool `json:"skipFinalBackup,omitempty" tf:"skip_final_backup,omitempty"`

	// The storage capacity (GiB) of the file system. Minimum of 1200. See more details at Allowed values for Fsx storage capacity. Update is allowed only for SCRATCH_2, PERSISTENT_1 and PERSISTENT_2 deployment types, See more details at Fsx Storage Capacity Update. Required when not creating filesystem for a backup.
	StorageCapacity *float64 `json:"storageCapacity,omitempty" tf:"storage_capacity,omitempty"`

	// - The filesystem storage type. Either SSD or HDD, defaults to SSD. HDD is only supported on PERSISTENT_1 deployment types.
	StorageType *string `json:"storageType,omitempty" tf:"storage_type,omitempty"`

	// A list of IDs for the subnets that the file system will be accessible from. File systems currently support only one subnet. The file server is also launched in that subnet's Availability Zone.
	SubnetIds []*string `json:"subnetIds,omitempty" tf:"subnet_ids,omitempty"`

	// Key-value map of resource tags.
	// +mapType=granular
	Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"`

	// A map of tags assigned to the resource, including those inherited from the provider default_tags configuration block.
	// +mapType=granular
	TagsAll map[string]*string `json:"tagsAll,omitempty" tf:"tags_all,omitempty"`

	// Identifier of the Virtual Private Cloud for the file system.
	VPCID *string `json:"vpcId,omitempty" tf:"vpc_id,omitempty"`

	// The preferred start time (in d:HH:MM format) to perform weekly maintenance, in the UTC time zone.
	WeeklyMaintenanceStartTime *string `json:"weeklyMaintenanceStartTime,omitempty" tf:"weekly_maintenance_start_time,omitempty"`
}

func (*LustreFileSystemObservation) DeepCopy

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

func (*LustreFileSystemObservation) DeepCopyInto

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

type LustreFileSystemParameters

type LustreFileSystemParameters struct {

	// How Amazon FSx keeps your file and directory listings up to date as you add or modify objects in your linked S3 bucket. see Auto Import Data Repo for more details. Only supported on PERSISTENT_1 deployment types.
	// +kubebuilder:validation:Optional
	AutoImportPolicy *string `json:"autoImportPolicy,omitempty" tf:"auto_import_policy,omitempty"`

	// The number of days to retain automatic backups. Setting this to 0 disables automatic backups. You can retain automatic backups for a maximum of 90 days. only valid for PERSISTENT_1 and PERSISTENT_2 deployment_type.
	// +kubebuilder:validation:Optional
	AutomaticBackupRetentionDays *float64 `json:"automaticBackupRetentionDays,omitempty" tf:"automatic_backup_retention_days,omitempty"`

	// The ID of the source backup to create the filesystem from.
	// +kubebuilder:validation:Optional
	BackupID *string `json:"backupId,omitempty" tf:"backup_id,omitempty"`

	// A boolean flag indicating whether tags for the file system should be copied to backups. Applicable for PERSISTENT_1 and PERSISTENT_2 deployment_type. The default value is false.
	// +kubebuilder:validation:Optional
	CopyTagsToBackups *bool `json:"copyTagsToBackups,omitempty" tf:"copy_tags_to_backups,omitempty"`

	// A recurring daily time, in the format HH:MM. HH is the zero-padded hour of the day (0-23), and MM is the zero-padded minute of the hour. For example, 05:00 specifies 5 AM daily. only valid for PERSISTENT_1 and PERSISTENT_2 deployment_type. Requires automatic_backup_retention_days to be set.
	// +kubebuilder:validation:Optional
	DailyAutomaticBackupStartTime *string `json:"dailyAutomaticBackupStartTime,omitempty" tf:"daily_automatic_backup_start_time,omitempty"`

	// Sets the data compression configuration for the file system. Valid values are LZ4 and NONE. Default value is NONE. Unsetting this value reverts the compression type back to NONE.
	// +kubebuilder:validation:Optional
	DataCompressionType *string `json:"dataCompressionType,omitempty" tf:"data_compression_type,omitempty"`

	// - The filesystem deployment type. One of: SCRATCH_1, SCRATCH_2, PERSISTENT_1, PERSISTENT_2.
	// +kubebuilder:validation:Optional
	DeploymentType *string `json:"deploymentType,omitempty" tf:"deployment_type,omitempty"`

	// - The type of drive cache used by PERSISTENT_1 filesystems that are provisioned with HDD storage_type. Required for HDD storage_type, set to either READ or NONE.
	// +kubebuilder:validation:Optional
	DriveCacheType *string `json:"driveCacheType,omitempty" tf:"drive_cache_type,omitempty"`

	// S3 URI (with optional prefix) where the root of your Amazon FSx file system is exported. Can only be specified with import_path argument and the path must use the same Amazon S3 bucket as specified in import_path. Set equal to import_path to overwrite files on export. Defaults to s3://{IMPORT BUCKET}/FSxLustre{CREATION TIMESTAMP}. Only supported on PERSISTENT_1 deployment types.
	// +kubebuilder:validation:Optional
	ExportPath *string `json:"exportPath,omitempty" tf:"export_path,omitempty"`

	// Sets the Lustre version for the file system that you're creating. Valid values are 2.10 for SCRATCH_1, SCRATCH_2 and PERSISTENT_1 deployment types. Valid values for 2.12 include all deployment types.
	// +kubebuilder:validation:Optional
	FileSystemTypeVersion *string `json:"fileSystemTypeVersion,omitempty" tf:"file_system_type_version,omitempty"`

	// A map of tags to apply to the file system's final backup.
	// +kubebuilder:validation:Optional
	// +mapType=granular
	FinalBackupTags map[string]*string `json:"finalBackupTags,omitempty" tf:"final_backup_tags,omitempty"`

	// S3 URI (with optional prefix) that you're using as the data repository for your FSx for Lustre file system. For example, s3://example-bucket/optional-prefix/. Only supported on PERSISTENT_1 deployment types.
	// +kubebuilder:validation:Optional
	ImportPath *string `json:"importPath,omitempty" tf:"import_path,omitempty"`

	// For files imported from a data repository, this value determines the stripe count and maximum amount of data per file (in MiB) stored on a single physical disk. Can only be specified with import_path argument. Defaults to 1024. Minimum of 1 and maximum of 512000. Only supported on PERSISTENT_1 deployment types.
	// +kubebuilder:validation:Optional
	ImportedFileChunkSize *float64 `json:"importedFileChunkSize,omitempty" tf:"imported_file_chunk_size,omitempty"`

	// ARN for the KMS Key to encrypt the file system at rest, applicable for PERSISTENT_1 and PERSISTENT_2 deployment_type. Defaults to an AWS managed KMS Key.
	// +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/kms/v1beta1.Key
	// +kubebuilder:validation:Optional
	KMSKeyID *string `json:"kmsKeyId,omitempty" tf:"kms_key_id,omitempty"`

	// Reference to a Key in kms to populate kmsKeyId.
	// +kubebuilder:validation:Optional
	KMSKeyIDRef *v1.Reference `json:"kmsKeyIdRef,omitempty" tf:"-"`

	// Selector for a Key in kms to populate kmsKeyId.
	// +kubebuilder:validation:Optional
	KMSKeyIDSelector *v1.Selector `json:"kmsKeyIdSelector,omitempty" tf:"-"`

	// The Lustre logging configuration used when creating an Amazon FSx for Lustre file system. When logging is enabled, Lustre logs error and warning events for data repositories associated with your file system to Amazon CloudWatch Logs. See log_configuration Block for details.
	// +kubebuilder:validation:Optional
	LogConfiguration *LogConfigurationParameters `json:"logConfiguration,omitempty" tf:"log_configuration,omitempty"`

	// The Lustre metadata configuration used when creating an Amazon FSx for Lustre file system. This can be used to specify a user provisioned metadata scale. This is only supported when deployment_type is set to PERSISTENT_2. See metadata_configuration Block for details.
	// +kubebuilder:validation:Optional
	MetadataConfiguration *MetadataConfigurationParameters `json:"metadataConfiguration,omitempty" tf:"metadata_configuration,omitempty"`

	// - Describes the amount of read and write throughput for each 1 tebibyte of storage, in MB/s/TiB, required for the PERSISTENT_1 and PERSISTENT_2 deployment_type. Valid values for PERSISTENT_1 deployment_type and SSD storage_type are 50, 100, 200. Valid values for PERSISTENT_1 deployment_type and HDD storage_type are 12, 40. Valid values for PERSISTENT_2 deployment_type and  SSD storage_type are 125, 250, 500, 1000.
	// +kubebuilder:validation:Optional
	PerUnitStorageThroughput *float64 `json:"perUnitStorageThroughput,omitempty" tf:"per_unit_storage_throughput,omitempty"`

	// Region is the region you'd like your resource to be created in.
	// +upjet:crd:field:TFTag=-
	// +kubebuilder:validation:Required
	Region *string `json:"region" tf:"-"`

	// The Lustre root squash configuration used when creating an Amazon FSx for Lustre file system. When enabled, root squash restricts root-level access from clients that try to access your file system as a root user. See root_squash_configuration Block for details.
	// +kubebuilder:validation:Optional
	RootSquashConfiguration *RootSquashConfigurationParameters `json:"rootSquashConfiguration,omitempty" tf:"root_squash_configuration,omitempty"`

	// References to SecurityGroup in ec2 to populate securityGroupIds.
	// +kubebuilder:validation:Optional
	SecurityGroupIDRefs []v1.Reference `json:"securityGroupIdRefs,omitempty" tf:"-"`

	// Selector for a list of SecurityGroup in ec2 to populate securityGroupIds.
	// +kubebuilder:validation:Optional
	SecurityGroupIDSelector *v1.Selector `json:"securityGroupIdSelector,omitempty" tf:"-"`

	// A list of IDs for the security groups that apply to the specified network interfaces created for file system access. These security groups will apply to all network interfaces.
	// +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/ec2/v1beta1.SecurityGroup
	// +crossplane:generate:reference:refFieldName=SecurityGroupIDRefs
	// +crossplane:generate:reference:selectorFieldName=SecurityGroupIDSelector
	// +kubebuilder:validation:Optional
	// +listType=set
	SecurityGroupIds []*string `json:"securityGroupIds,omitempty" tf:"security_group_ids,omitempty"`

	// When enabled, will skip the default final backup taken when the file system is deleted. This configuration must be applied separately before attempting to delete the resource to have the desired behavior. Defaults to true.
	// +kubebuilder:validation:Optional
	SkipFinalBackup *bool `json:"skipFinalBackup,omitempty" tf:"skip_final_backup,omitempty"`

	// The storage capacity (GiB) of the file system. Minimum of 1200. See more details at Allowed values for Fsx storage capacity. Update is allowed only for SCRATCH_2, PERSISTENT_1 and PERSISTENT_2 deployment types, See more details at Fsx Storage Capacity Update. Required when not creating filesystem for a backup.
	// +kubebuilder:validation:Optional
	StorageCapacity *float64 `json:"storageCapacity,omitempty" tf:"storage_capacity,omitempty"`

	// - The filesystem storage type. Either SSD or HDD, defaults to SSD. HDD is only supported on PERSISTENT_1 deployment types.
	// +kubebuilder:validation:Optional
	StorageType *string `json:"storageType,omitempty" tf:"storage_type,omitempty"`

	// References to Subnet in ec2 to populate subnetIds.
	// +kubebuilder:validation:Optional
	SubnetIDRefs []v1.Reference `json:"subnetIdRefs,omitempty" tf:"-"`

	// Selector for a list of Subnet in ec2 to populate subnetIds.
	// +kubebuilder:validation:Optional
	SubnetIDSelector *v1.Selector `json:"subnetIdSelector,omitempty" tf:"-"`

	// A list of IDs for the subnets that the file system will be accessible from. File systems currently support only one subnet. The file server is also launched in that subnet's Availability Zone.
	// +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/ec2/v1beta1.Subnet
	// +crossplane:generate:reference:refFieldName=SubnetIDRefs
	// +crossplane:generate:reference:selectorFieldName=SubnetIDSelector
	// +kubebuilder:validation:Optional
	SubnetIds []*string `json:"subnetIds,omitempty" tf:"subnet_ids,omitempty"`

	// Key-value map of resource tags.
	// +kubebuilder:validation:Optional
	// +mapType=granular
	Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"`

	// The preferred start time (in d:HH:MM format) to perform weekly maintenance, in the UTC time zone.
	// +kubebuilder:validation:Optional
	WeeklyMaintenanceStartTime *string `json:"weeklyMaintenanceStartTime,omitempty" tf:"weekly_maintenance_start_time,omitempty"`
}

func (*LustreFileSystemParameters) DeepCopy

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

func (*LustreFileSystemParameters) DeepCopyInto

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

type LustreFileSystemSpec

type LustreFileSystemSpec struct {
	v1.ResourceSpec `json:",inline"`
	ForProvider     LustreFileSystemParameters `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 LustreFileSystemInitParameters `json:"initProvider,omitempty"`
}

LustreFileSystemSpec defines the desired state of LustreFileSystem

func (*LustreFileSystemSpec) DeepCopy

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

func (*LustreFileSystemSpec) DeepCopyInto

func (in *LustreFileSystemSpec) DeepCopyInto(out *LustreFileSystemSpec)

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

type LustreFileSystemStatus

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

LustreFileSystemStatus defines the observed state of LustreFileSystem.

func (*LustreFileSystemStatus) DeepCopy

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

func (*LustreFileSystemStatus) DeepCopyInto

func (in *LustreFileSystemStatus) DeepCopyInto(out *LustreFileSystemStatus)

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

type ManagementInitParameters

type ManagementInitParameters struct {
}

func (*ManagementInitParameters) DeepCopy

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

func (*ManagementInitParameters) DeepCopyInto

func (in *ManagementInitParameters) DeepCopyInto(out *ManagementInitParameters)

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

type ManagementObservation

type ManagementObservation struct {

	// DNS name for the file system.
	DNSName *string `json:"dnsName,omitempty" tf:"dns_name,omitempty"`

	// IP addresses of the file system endpoint.
	// +listType=set
	IPAddresses []*string `json:"ipAddresses,omitempty" tf:"ip_addresses,omitempty"`
}

func (*ManagementObservation) DeepCopy

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

func (*ManagementObservation) DeepCopyInto

func (in *ManagementObservation) DeepCopyInto(out *ManagementObservation)

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

type ManagementParameters

type ManagementParameters struct {
}

func (*ManagementParameters) DeepCopy

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

func (*ManagementParameters) DeepCopyInto

func (in *ManagementParameters) DeepCopyInto(out *ManagementParameters)

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

type MetadataConfigurationInitParameters added in v1.10.0

type MetadataConfigurationInitParameters struct {

	// Amount of IOPS provisioned for metadata. This parameter should only be used when the mode is set to USER_PROVISIONED. Valid Values are 1500,3000,6000 and 12000 through 192000 in increments of 12000.
	Iops *float64 `json:"iops,omitempty" tf:"iops,omitempty"`

	// Mode for the metadata configuration of the file system. Valid values are AUTOMATIC, and USER_PROVISIONED.
	Mode *string `json:"mode,omitempty" tf:"mode,omitempty"`
}

func (*MetadataConfigurationInitParameters) DeepCopy added in v1.10.0

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

func (*MetadataConfigurationInitParameters) DeepCopyInto added in v1.10.0

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

type MetadataConfigurationObservation added in v1.10.0

type MetadataConfigurationObservation struct {

	// Amount of IOPS provisioned for metadata. This parameter should only be used when the mode is set to USER_PROVISIONED. Valid Values are 1500,3000,6000 and 12000 through 192000 in increments of 12000.
	Iops *float64 `json:"iops,omitempty" tf:"iops,omitempty"`

	// Mode for the metadata configuration of the file system. Valid values are AUTOMATIC, and USER_PROVISIONED.
	Mode *string `json:"mode,omitempty" tf:"mode,omitempty"`
}

func (*MetadataConfigurationObservation) DeepCopy added in v1.10.0

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

func (*MetadataConfigurationObservation) DeepCopyInto added in v1.10.0

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

type MetadataConfigurationParameters added in v1.10.0

type MetadataConfigurationParameters struct {

	// Amount of IOPS provisioned for metadata. This parameter should only be used when the mode is set to USER_PROVISIONED. Valid Values are 1500,3000,6000 and 12000 through 192000 in increments of 12000.
	// +kubebuilder:validation:Optional
	Iops *float64 `json:"iops,omitempty" tf:"iops,omitempty"`

	// Mode for the metadata configuration of the file system. Valid values are AUTOMATIC, and USER_PROVISIONED.
	// +kubebuilder:validation:Optional
	Mode *string `json:"mode,omitempty" tf:"mode,omitempty"`
}

func (*MetadataConfigurationParameters) DeepCopy added in v1.10.0

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

func (*MetadataConfigurationParameters) DeepCopyInto added in v1.10.0

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

type NFSInitParameters

type NFSInitParameters struct {
}

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 Domain Name Service (DNS) name for the storage virtual machine. You can mount your storage virtual machine using its DNS name.
	DNSName *string `json:"dnsName,omitempty" tf:"dns_name,omitempty"`

	// IP addresses of the storage virtual machine endpoint.
	// +listType=set
	IPAddresses []*string `json:"ipAddresses,omitempty" tf:"ip_addresses,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 {
}

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 OntapFileSystem

type OntapFileSystem 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.deploymentType) || (has(self.initProvider) && has(self.initProvider.deploymentType))",message="spec.forProvider.deploymentType is a required parameter"
	// +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.storageCapacity) || (has(self.initProvider) && has(self.initProvider.storageCapacity))",message="spec.forProvider.storageCapacity is a required parameter"
	Spec   OntapFileSystemSpec   `json:"spec"`
	Status OntapFileSystemStatus `json:"status,omitempty"`
}

OntapFileSystem is the Schema for the OntapFileSystems API. Manages an Amazon FSx for NetApp ONTAP file system. +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,aws}

func (*OntapFileSystem) DeepCopy

func (in *OntapFileSystem) DeepCopy() *OntapFileSystem

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

func (*OntapFileSystem) DeepCopyInto

func (in *OntapFileSystem) DeepCopyInto(out *OntapFileSystem)

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

func (*OntapFileSystem) DeepCopyObject

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

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

func (*OntapFileSystem) GetCondition

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

GetCondition of this OntapFileSystem.

func (*OntapFileSystem) GetConnectionDetailsMapping

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

GetConnectionDetailsMapping for this OntapFileSystem

func (*OntapFileSystem) GetDeletionPolicy

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

GetDeletionPolicy of this OntapFileSystem.

func (*OntapFileSystem) GetID

func (tr *OntapFileSystem) GetID() string

GetID returns ID of underlying Terraform resource of this OntapFileSystem

func (*OntapFileSystem) GetInitParameters

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

GetInitParameters of this OntapFileSystem

func (*OntapFileSystem) GetManagementPolicies

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

GetManagementPolicies of this OntapFileSystem.

func (*OntapFileSystem) GetMergedParameters

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

GetInitParameters of this OntapFileSystem

func (*OntapFileSystem) GetObservation

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

GetObservation of this OntapFileSystem

func (*OntapFileSystem) GetParameters

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

GetParameters of this OntapFileSystem

func (*OntapFileSystem) GetProviderConfigReference

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

GetProviderConfigReference of this OntapFileSystem.

func (*OntapFileSystem) GetPublishConnectionDetailsTo

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

GetPublishConnectionDetailsTo of this OntapFileSystem.

func (*OntapFileSystem) GetTerraformResourceType

func (mg *OntapFileSystem) GetTerraformResourceType() string

GetTerraformResourceType returns Terraform resource type for this OntapFileSystem

func (*OntapFileSystem) GetTerraformSchemaVersion

func (tr *OntapFileSystem) GetTerraformSchemaVersion() int

GetTerraformSchemaVersion returns the associated Terraform schema version

func (*OntapFileSystem) GetWriteConnectionSecretToReference

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

GetWriteConnectionSecretToReference of this OntapFileSystem.

func (*OntapFileSystem) Hub

func (tr *OntapFileSystem) Hub()

Hub marks this type as a conversion hub.

func (*OntapFileSystem) LateInitialize

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

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

func (*OntapFileSystem) ResolveReferences

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

ResolveReferences of this OntapFileSystem.

func (*OntapFileSystem) SetConditions

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

SetConditions of this OntapFileSystem.

func (*OntapFileSystem) SetDeletionPolicy

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

SetDeletionPolicy of this OntapFileSystem.

func (*OntapFileSystem) SetManagementPolicies

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

SetManagementPolicies of this OntapFileSystem.

func (*OntapFileSystem) SetObservation

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

SetObservation for this OntapFileSystem

func (*OntapFileSystem) SetParameters

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

SetParameters for this OntapFileSystem

func (*OntapFileSystem) SetProviderConfigReference

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

SetProviderConfigReference of this OntapFileSystem.

func (*OntapFileSystem) SetPublishConnectionDetailsTo

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

SetPublishConnectionDetailsTo of this OntapFileSystem.

func (*OntapFileSystem) SetWriteConnectionSecretToReference

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

SetWriteConnectionSecretToReference of this OntapFileSystem.

type OntapFileSystemInitParameters

type OntapFileSystemInitParameters struct {

	// The number of days to retain automatic backups. Setting this to 0 disables automatic backups. You can retain automatic backups for a maximum of 90 days.
	AutomaticBackupRetentionDays *float64 `json:"automaticBackupRetentionDays,omitempty" tf:"automatic_backup_retention_days,omitempty"`

	// A recurring daily time, in the format HH:MM. HH is the zero-padded hour of the day (0-23), and MM is the zero-padded minute of the hour. For example, 05:00 specifies 5 AM daily. Requires automatic_backup_retention_days to be set.
	DailyAutomaticBackupStartTime *string `json:"dailyAutomaticBackupStartTime,omitempty" tf:"daily_automatic_backup_start_time,omitempty"`

	// - The filesystem deployment type. Supports MULTI_AZ_1, MULTI_AZ_2, SINGLE_AZ_1, and SINGLE_AZ_2.
	DeploymentType *string `json:"deploymentType,omitempty" tf:"deployment_type,omitempty"`

	// The SSD IOPS configuration for the Amazon FSx for NetApp ONTAP file system. See Disk Iops Configuration below.
	DiskIopsConfiguration *DiskIopsConfigurationInitParameters `json:"diskIopsConfiguration,omitempty" tf:"disk_iops_configuration,omitempty"`

	// Specifies the IP address range in which the endpoints to access your file system will be created. By default, Amazon FSx selects an unused IP address range for you from the 198.19.* range.
	EndpointIPAddressRange *string `json:"endpointIpAddressRange,omitempty" tf:"endpoint_ip_address_range,omitempty"`

	// The ONTAP administrative password for the fsxadmin user that you can use to administer your file system using the ONTAP CLI and REST API.
	FSXAdminPasswordSecretRef *v1.SecretKeySelector `json:"fsxAdminPasswordSecretRef,omitempty" tf:"-"`

	// - The number of ha_pairs to deploy for the file system. Valid value is 1 for SINGLE_AZ_1 or MULTI_AZ_1 and MULTI_AZ_2. Valid values are 1 through 12 for SINGLE_AZ_2.
	HaPairs *float64 `json:"haPairs,omitempty" tf:"ha_pairs,omitempty"`

	// ARN for the KMS Key to encrypt the file system at rest, Defaults to an AWS managed KMS Key.
	// +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/kms/v1beta1.Key
	KMSKeyID *string `json:"kmsKeyId,omitempty" tf:"kms_key_id,omitempty"`

	// Reference to a Key in kms to populate kmsKeyId.
	// +kubebuilder:validation:Optional
	KMSKeyIDRef *v1.Reference `json:"kmsKeyIdRef,omitempty" tf:"-"`

	// Selector for a Key in kms to populate kmsKeyId.
	// +kubebuilder:validation:Optional
	KMSKeyIDSelector *v1.Selector `json:"kmsKeyIdSelector,omitempty" tf:"-"`

	// The ID for a subnet. A subnet is a range of IP addresses in your virtual private cloud (VPC).
	// +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/ec2/v1beta1.Subnet
	// +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractResourceID()
	PreferredSubnetID *string `json:"preferredSubnetId,omitempty" tf:"preferred_subnet_id,omitempty"`

	// Reference to a Subnet in ec2 to populate preferredSubnetId.
	// +kubebuilder:validation:Optional
	PreferredSubnetIDRef *v1.Reference `json:"preferredSubnetIdRef,omitempty" tf:"-"`

	// Selector for a Subnet in ec2 to populate preferredSubnetId.
	// +kubebuilder:validation:Optional
	PreferredSubnetIDSelector *v1.Selector `json:"preferredSubnetIdSelector,omitempty" tf:"-"`

	// Specifies the VPC route tables in which your file system's endpoints will be created. You should specify all VPC route tables associated with the subnets in which your clients are located. By default, Amazon FSx selects your VPC's default route table.
	// +listType=set
	RouteTableIds []*string `json:"routeTableIds,omitempty" tf:"route_table_ids,omitempty"`

	// References to SecurityGroup in ec2 to populate securityGroupIds.
	// +kubebuilder:validation:Optional
	SecurityGroupIDRefs []v1.Reference `json:"securityGroupIdRefs,omitempty" tf:"-"`

	// Selector for a list of SecurityGroup in ec2 to populate securityGroupIds.
	// +kubebuilder:validation:Optional
	SecurityGroupIDSelector *v1.Selector `json:"securityGroupIdSelector,omitempty" tf:"-"`

	// A list of IDs for the security groups that apply to the specified network interfaces created for file system access. These security groups will apply to all network interfaces.
	// +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/ec2/v1beta1.SecurityGroup
	// +crossplane:generate:reference:refFieldName=SecurityGroupIDRefs
	// +crossplane:generate:reference:selectorFieldName=SecurityGroupIDSelector
	// +listType=set
	SecurityGroupIds []*string `json:"securityGroupIds,omitempty" tf:"security_group_ids,omitempty"`

	// The storage capacity (GiB) of the file system. Valid values between 1024 and 196608 for file systems with deployment_type SINGLE_AZ_1 and MULTI_AZ_1. Valid values are between 1024 and 524288 for MULTI_AZ_2. Valid values between 1024 (1024 per ha pair) and 1048576 for file systems with deployment_type SINGLE_AZ_2. For SINGLE_AZ_2, the 1048576 (1PB) maximum is only supported when using 2 or more ha_pairs, the maximum is 524288 (512TB) when using 1 ha_pair.
	StorageCapacity *float64 `json:"storageCapacity,omitempty" tf:"storage_capacity,omitempty"`

	// - The filesystem storage type. defaults to SSD.
	StorageType *string `json:"storageType,omitempty" tf:"storage_type,omitempty"`

	// References to Subnet in ec2 to populate subnetIds.
	// +kubebuilder:validation:Optional
	SubnetIDRefs []v1.Reference `json:"subnetIdRefs,omitempty" tf:"-"`

	// Selector for a list of Subnet in ec2 to populate subnetIds.
	// +kubebuilder:validation:Optional
	SubnetIDSelector *v1.Selector `json:"subnetIdSelector,omitempty" tf:"-"`

	// A list of IDs for the subnets that the file system will be accessible from. Up to 2 subnets can be provided.
	// +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/ec2/v1beta1.Subnet
	// +crossplane:generate:reference:refFieldName=SubnetIDRefs
	// +crossplane:generate:reference:selectorFieldName=SubnetIDSelector
	SubnetIds []*string `json:"subnetIds,omitempty" tf:"subnet_ids,omitempty"`

	// Key-value map of resource tags.
	// +mapType=granular
	Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"`

	// Sets the throughput capacity (in MBps) for the file system that you're creating. Valid values are 128, 256, 512, 1024, 2048, and 4096. This parameter is only supported when not using the ha_pairs parameter. Either throughput_capacity or throughput_capacity_per_ha_pair must be specified.
	ThroughputCapacity *float64 `json:"throughputCapacity,omitempty" tf:"throughput_capacity,omitempty"`

	// Sets the per-HA-pair throughput capacity (in MBps) for the file system that you're creating, as opposed to throughput_capacity which specifies the total throughput capacity for the file system. Valid value for MULTI_AZ_1 and SINGLE_AZ_1 are 128, 256, 512, 1024, 2048, and 4096. Valid values for deployment type MULTI_AZ_2 and SINGLE_AZ_2 are 384,768,1536,3072,6144 where ha_pairs is 1. Valid values for deployment type SINGLE_AZ_2 are 1536, 3072, and 6144 where ha_pairs is greater than 1. This parameter is only supported when specifying the ha_pairs parameter. Either throughput_capacity or throughput_capacity_per_ha_pair must be specified.
	ThroughputCapacityPerHaPair *float64 `json:"throughputCapacityPerHaPair,omitempty" tf:"throughput_capacity_per_ha_pair,omitempty"`

	// The preferred start time (in d:HH:MM format) to perform weekly maintenance, in the UTC time zone.
	WeeklyMaintenanceStartTime *string `json:"weeklyMaintenanceStartTime,omitempty" tf:"weekly_maintenance_start_time,omitempty"`
}

func (*OntapFileSystemInitParameters) DeepCopy

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

func (*OntapFileSystemInitParameters) DeepCopyInto

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

type OntapFileSystemList

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

OntapFileSystemList contains a list of OntapFileSystems

func (*OntapFileSystemList) DeepCopy

func (in *OntapFileSystemList) DeepCopy() *OntapFileSystemList

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

func (*OntapFileSystemList) DeepCopyInto

func (in *OntapFileSystemList) DeepCopyInto(out *OntapFileSystemList)

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

func (*OntapFileSystemList) DeepCopyObject

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

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

func (*OntapFileSystemList) GetItems

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

GetItems of this OntapFileSystemList.

type OntapFileSystemObservation

type OntapFileSystemObservation struct {

	// Amazon Resource Name of the file system.
	Arn *string `json:"arn,omitempty" tf:"arn,omitempty"`

	// The number of days to retain automatic backups. Setting this to 0 disables automatic backups. You can retain automatic backups for a maximum of 90 days.
	AutomaticBackupRetentionDays *float64 `json:"automaticBackupRetentionDays,omitempty" tf:"automatic_backup_retention_days,omitempty"`

	// DNS name for the file system.
	DNSName *string `json:"dnsName,omitempty" tf:"dns_name,omitempty"`

	// A recurring daily time, in the format HH:MM. HH is the zero-padded hour of the day (0-23), and MM is the zero-padded minute of the hour. For example, 05:00 specifies 5 AM daily. Requires automatic_backup_retention_days to be set.
	DailyAutomaticBackupStartTime *string `json:"dailyAutomaticBackupStartTime,omitempty" tf:"daily_automatic_backup_start_time,omitempty"`

	// - The filesystem deployment type. Supports MULTI_AZ_1, MULTI_AZ_2, SINGLE_AZ_1, and SINGLE_AZ_2.
	DeploymentType *string `json:"deploymentType,omitempty" tf:"deployment_type,omitempty"`

	// The SSD IOPS configuration for the Amazon FSx for NetApp ONTAP file system. See Disk Iops Configuration below.
	DiskIopsConfiguration *DiskIopsConfigurationObservation `json:"diskIopsConfiguration,omitempty" tf:"disk_iops_configuration,omitempty"`

	// Specifies the IP address range in which the endpoints to access your file system will be created. By default, Amazon FSx selects an unused IP address range for you from the 198.19.* range.
	EndpointIPAddressRange *string `json:"endpointIpAddressRange,omitempty" tf:"endpoint_ip_address_range,omitempty"`

	// The endpoints that are used to access data or to manage the file system using the NetApp ONTAP CLI, REST API, or NetApp SnapMirror. See Endpoints below.
	Endpoints []EndpointsObservation `json:"endpoints,omitempty" tf:"endpoints,omitempty"`

	// - The number of ha_pairs to deploy for the file system. Valid value is 1 for SINGLE_AZ_1 or MULTI_AZ_1 and MULTI_AZ_2. Valid values are 1 through 12 for SINGLE_AZ_2.
	HaPairs *float64 `json:"haPairs,omitempty" tf:"ha_pairs,omitempty"`

	// Identifier of the file system, e.g., fs-12345678
	ID *string `json:"id,omitempty" tf:"id,omitempty"`

	// ARN for the KMS Key to encrypt the file system at rest, Defaults to an AWS managed KMS Key.
	KMSKeyID *string `json:"kmsKeyId,omitempty" tf:"kms_key_id,omitempty"`

	// Set of Elastic Network Interface identifiers from which the file system is accessible The first network interface returned is the primary network interface.
	NetworkInterfaceIds []*string `json:"networkInterfaceIds,omitempty" tf:"network_interface_ids,omitempty"`

	// AWS account identifier that created the file system.
	OwnerID *string `json:"ownerId,omitempty" tf:"owner_id,omitempty"`

	// The ID for a subnet. A subnet is a range of IP addresses in your virtual private cloud (VPC).
	PreferredSubnetID *string `json:"preferredSubnetId,omitempty" tf:"preferred_subnet_id,omitempty"`

	// Specifies the VPC route tables in which your file system's endpoints will be created. You should specify all VPC route tables associated with the subnets in which your clients are located. By default, Amazon FSx selects your VPC's default route table.
	// +listType=set
	RouteTableIds []*string `json:"routeTableIds,omitempty" tf:"route_table_ids,omitempty"`

	// A list of IDs for the security groups that apply to the specified network interfaces created for file system access. These security groups will apply to all network interfaces.
	// +listType=set
	SecurityGroupIds []*string `json:"securityGroupIds,omitempty" tf:"security_group_ids,omitempty"`

	// The storage capacity (GiB) of the file system. Valid values between 1024 and 196608 for file systems with deployment_type SINGLE_AZ_1 and MULTI_AZ_1. Valid values are between 1024 and 524288 for MULTI_AZ_2. Valid values between 1024 (1024 per ha pair) and 1048576 for file systems with deployment_type SINGLE_AZ_2. For SINGLE_AZ_2, the 1048576 (1PB) maximum is only supported when using 2 or more ha_pairs, the maximum is 524288 (512TB) when using 1 ha_pair.
	StorageCapacity *float64 `json:"storageCapacity,omitempty" tf:"storage_capacity,omitempty"`

	// - The filesystem storage type. defaults to SSD.
	StorageType *string `json:"storageType,omitempty" tf:"storage_type,omitempty"`

	// A list of IDs for the subnets that the file system will be accessible from. Up to 2 subnets can be provided.
	SubnetIds []*string `json:"subnetIds,omitempty" tf:"subnet_ids,omitempty"`

	// Key-value map of resource tags.
	// +mapType=granular
	Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"`

	// A map of tags assigned to the resource, including those inherited from the provider default_tags configuration block.
	// +mapType=granular
	TagsAll map[string]*string `json:"tagsAll,omitempty" tf:"tags_all,omitempty"`

	// Sets the throughput capacity (in MBps) for the file system that you're creating. Valid values are 128, 256, 512, 1024, 2048, and 4096. This parameter is only supported when not using the ha_pairs parameter. Either throughput_capacity or throughput_capacity_per_ha_pair must be specified.
	ThroughputCapacity *float64 `json:"throughputCapacity,omitempty" tf:"throughput_capacity,omitempty"`

	// Sets the per-HA-pair throughput capacity (in MBps) for the file system that you're creating, as opposed to throughput_capacity which specifies the total throughput capacity for the file system. Valid value for MULTI_AZ_1 and SINGLE_AZ_1 are 128, 256, 512, 1024, 2048, and 4096. Valid values for deployment type MULTI_AZ_2 and SINGLE_AZ_2 are 384,768,1536,3072,6144 where ha_pairs is 1. Valid values for deployment type SINGLE_AZ_2 are 1536, 3072, and 6144 where ha_pairs is greater than 1. This parameter is only supported when specifying the ha_pairs parameter. Either throughput_capacity or throughput_capacity_per_ha_pair must be specified.
	ThroughputCapacityPerHaPair *float64 `json:"throughputCapacityPerHaPair,omitempty" tf:"throughput_capacity_per_ha_pair,omitempty"`

	// Identifier of the Virtual Private Cloud for the file system.
	VPCID *string `json:"vpcId,omitempty" tf:"vpc_id,omitempty"`

	// The preferred start time (in d:HH:MM format) to perform weekly maintenance, in the UTC time zone.
	WeeklyMaintenanceStartTime *string `json:"weeklyMaintenanceStartTime,omitempty" tf:"weekly_maintenance_start_time,omitempty"`
}

func (*OntapFileSystemObservation) DeepCopy

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

func (*OntapFileSystemObservation) DeepCopyInto

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

type OntapFileSystemParameters

type OntapFileSystemParameters struct {

	// The number of days to retain automatic backups. Setting this to 0 disables automatic backups. You can retain automatic backups for a maximum of 90 days.
	// +kubebuilder:validation:Optional
	AutomaticBackupRetentionDays *float64 `json:"automaticBackupRetentionDays,omitempty" tf:"automatic_backup_retention_days,omitempty"`

	// A recurring daily time, in the format HH:MM. HH is the zero-padded hour of the day (0-23), and MM is the zero-padded minute of the hour. For example, 05:00 specifies 5 AM daily. Requires automatic_backup_retention_days to be set.
	// +kubebuilder:validation:Optional
	DailyAutomaticBackupStartTime *string `json:"dailyAutomaticBackupStartTime,omitempty" tf:"daily_automatic_backup_start_time,omitempty"`

	// - The filesystem deployment type. Supports MULTI_AZ_1, MULTI_AZ_2, SINGLE_AZ_1, and SINGLE_AZ_2.
	// +kubebuilder:validation:Optional
	DeploymentType *string `json:"deploymentType,omitempty" tf:"deployment_type,omitempty"`

	// The SSD IOPS configuration for the Amazon FSx for NetApp ONTAP file system. See Disk Iops Configuration below.
	// +kubebuilder:validation:Optional
	DiskIopsConfiguration *DiskIopsConfigurationParameters `json:"diskIopsConfiguration,omitempty" tf:"disk_iops_configuration,omitempty"`

	// Specifies the IP address range in which the endpoints to access your file system will be created. By default, Amazon FSx selects an unused IP address range for you from the 198.19.* range.
	// +kubebuilder:validation:Optional
	EndpointIPAddressRange *string `json:"endpointIpAddressRange,omitempty" tf:"endpoint_ip_address_range,omitempty"`

	// The ONTAP administrative password for the fsxadmin user that you can use to administer your file system using the ONTAP CLI and REST API.
	// +kubebuilder:validation:Optional
	FSXAdminPasswordSecretRef *v1.SecretKeySelector `json:"fsxAdminPasswordSecretRef,omitempty" tf:"-"`

	// - The number of ha_pairs to deploy for the file system. Valid value is 1 for SINGLE_AZ_1 or MULTI_AZ_1 and MULTI_AZ_2. Valid values are 1 through 12 for SINGLE_AZ_2.
	// +kubebuilder:validation:Optional
	HaPairs *float64 `json:"haPairs,omitempty" tf:"ha_pairs,omitempty"`

	// ARN for the KMS Key to encrypt the file system at rest, Defaults to an AWS managed KMS Key.
	// +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/kms/v1beta1.Key
	// +kubebuilder:validation:Optional
	KMSKeyID *string `json:"kmsKeyId,omitempty" tf:"kms_key_id,omitempty"`

	// Reference to a Key in kms to populate kmsKeyId.
	// +kubebuilder:validation:Optional
	KMSKeyIDRef *v1.Reference `json:"kmsKeyIdRef,omitempty" tf:"-"`

	// Selector for a Key in kms to populate kmsKeyId.
	// +kubebuilder:validation:Optional
	KMSKeyIDSelector *v1.Selector `json:"kmsKeyIdSelector,omitempty" tf:"-"`

	// The ID for a subnet. A subnet is a range of IP addresses in your virtual private cloud (VPC).
	// +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/ec2/v1beta1.Subnet
	// +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractResourceID()
	// +kubebuilder:validation:Optional
	PreferredSubnetID *string `json:"preferredSubnetId,omitempty" tf:"preferred_subnet_id,omitempty"`

	// Reference to a Subnet in ec2 to populate preferredSubnetId.
	// +kubebuilder:validation:Optional
	PreferredSubnetIDRef *v1.Reference `json:"preferredSubnetIdRef,omitempty" tf:"-"`

	// Selector for a Subnet in ec2 to populate preferredSubnetId.
	// +kubebuilder:validation:Optional
	PreferredSubnetIDSelector *v1.Selector `json:"preferredSubnetIdSelector,omitempty" tf:"-"`

	// Region is the region you'd like your resource to be created in.
	// +upjet:crd:field:TFTag=-
	// +kubebuilder:validation:Required
	Region *string `json:"region" tf:"-"`

	// Specifies the VPC route tables in which your file system's endpoints will be created. You should specify all VPC route tables associated with the subnets in which your clients are located. By default, Amazon FSx selects your VPC's default route table.
	// +kubebuilder:validation:Optional
	// +listType=set
	RouteTableIds []*string `json:"routeTableIds,omitempty" tf:"route_table_ids,omitempty"`

	// References to SecurityGroup in ec2 to populate securityGroupIds.
	// +kubebuilder:validation:Optional
	SecurityGroupIDRefs []v1.Reference `json:"securityGroupIdRefs,omitempty" tf:"-"`

	// Selector for a list of SecurityGroup in ec2 to populate securityGroupIds.
	// +kubebuilder:validation:Optional
	SecurityGroupIDSelector *v1.Selector `json:"securityGroupIdSelector,omitempty" tf:"-"`

	// A list of IDs for the security groups that apply to the specified network interfaces created for file system access. These security groups will apply to all network interfaces.
	// +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/ec2/v1beta1.SecurityGroup
	// +crossplane:generate:reference:refFieldName=SecurityGroupIDRefs
	// +crossplane:generate:reference:selectorFieldName=SecurityGroupIDSelector
	// +kubebuilder:validation:Optional
	// +listType=set
	SecurityGroupIds []*string `json:"securityGroupIds,omitempty" tf:"security_group_ids,omitempty"`

	// The storage capacity (GiB) of the file system. Valid values between 1024 and 196608 for file systems with deployment_type SINGLE_AZ_1 and MULTI_AZ_1. Valid values are between 1024 and 524288 for MULTI_AZ_2. Valid values between 1024 (1024 per ha pair) and 1048576 for file systems with deployment_type SINGLE_AZ_2. For SINGLE_AZ_2, the 1048576 (1PB) maximum is only supported when using 2 or more ha_pairs, the maximum is 524288 (512TB) when using 1 ha_pair.
	// +kubebuilder:validation:Optional
	StorageCapacity *float64 `json:"storageCapacity,omitempty" tf:"storage_capacity,omitempty"`

	// - The filesystem storage type. defaults to SSD.
	// +kubebuilder:validation:Optional
	StorageType *string `json:"storageType,omitempty" tf:"storage_type,omitempty"`

	// References to Subnet in ec2 to populate subnetIds.
	// +kubebuilder:validation:Optional
	SubnetIDRefs []v1.Reference `json:"subnetIdRefs,omitempty" tf:"-"`

	// Selector for a list of Subnet in ec2 to populate subnetIds.
	// +kubebuilder:validation:Optional
	SubnetIDSelector *v1.Selector `json:"subnetIdSelector,omitempty" tf:"-"`

	// A list of IDs for the subnets that the file system will be accessible from. Up to 2 subnets can be provided.
	// +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/ec2/v1beta1.Subnet
	// +crossplane:generate:reference:refFieldName=SubnetIDRefs
	// +crossplane:generate:reference:selectorFieldName=SubnetIDSelector
	// +kubebuilder:validation:Optional
	SubnetIds []*string `json:"subnetIds,omitempty" tf:"subnet_ids,omitempty"`

	// Key-value map of resource tags.
	// +kubebuilder:validation:Optional
	// +mapType=granular
	Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"`

	// Sets the throughput capacity (in MBps) for the file system that you're creating. Valid values are 128, 256, 512, 1024, 2048, and 4096. This parameter is only supported when not using the ha_pairs parameter. Either throughput_capacity or throughput_capacity_per_ha_pair must be specified.
	// +kubebuilder:validation:Optional
	ThroughputCapacity *float64 `json:"throughputCapacity,omitempty" tf:"throughput_capacity,omitempty"`

	// Sets the per-HA-pair throughput capacity (in MBps) for the file system that you're creating, as opposed to throughput_capacity which specifies the total throughput capacity for the file system. Valid value for MULTI_AZ_1 and SINGLE_AZ_1 are 128, 256, 512, 1024, 2048, and 4096. Valid values for deployment type MULTI_AZ_2 and SINGLE_AZ_2 are 384,768,1536,3072,6144 where ha_pairs is 1. Valid values for deployment type SINGLE_AZ_2 are 1536, 3072, and 6144 where ha_pairs is greater than 1. This parameter is only supported when specifying the ha_pairs parameter. Either throughput_capacity or throughput_capacity_per_ha_pair must be specified.
	// +kubebuilder:validation:Optional
	ThroughputCapacityPerHaPair *float64 `json:"throughputCapacityPerHaPair,omitempty" tf:"throughput_capacity_per_ha_pair,omitempty"`

	// The preferred start time (in d:HH:MM format) to perform weekly maintenance, in the UTC time zone.
	// +kubebuilder:validation:Optional
	WeeklyMaintenanceStartTime *string `json:"weeklyMaintenanceStartTime,omitempty" tf:"weekly_maintenance_start_time,omitempty"`
}

func (*OntapFileSystemParameters) DeepCopy

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

func (*OntapFileSystemParameters) DeepCopyInto

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

type OntapFileSystemSpec

type OntapFileSystemSpec struct {
	v1.ResourceSpec `json:",inline"`
	ForProvider     OntapFileSystemParameters `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 OntapFileSystemInitParameters `json:"initProvider,omitempty"`
}

OntapFileSystemSpec defines the desired state of OntapFileSystem

func (*OntapFileSystemSpec) DeepCopy

func (in *OntapFileSystemSpec) DeepCopy() *OntapFileSystemSpec

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

func (*OntapFileSystemSpec) DeepCopyInto

func (in *OntapFileSystemSpec) DeepCopyInto(out *OntapFileSystemSpec)

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

type OntapFileSystemStatus

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

OntapFileSystemStatus defines the observed state of OntapFileSystem.

func (*OntapFileSystemStatus) DeepCopy

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

func (*OntapFileSystemStatus) DeepCopyInto

func (in *OntapFileSystemStatus) DeepCopyInto(out *OntapFileSystemStatus)

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

type OntapStorageVirtualMachine

type OntapStorageVirtualMachine 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.name) || (has(self.initProvider) && has(self.initProvider.name))",message="spec.forProvider.name is a required parameter"
	Spec   OntapStorageVirtualMachineSpec   `json:"spec"`
	Status OntapStorageVirtualMachineStatus `json:"status,omitempty"`
}

OntapStorageVirtualMachine is the Schema for the OntapStorageVirtualMachines API. Manages a FSx Storage Virtual Machine. +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,aws}

func (*OntapStorageVirtualMachine) DeepCopy

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

func (*OntapStorageVirtualMachine) DeepCopyInto

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

func (*OntapStorageVirtualMachine) DeepCopyObject

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

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

func (*OntapStorageVirtualMachine) GetCondition

GetCondition of this OntapStorageVirtualMachine.

func (*OntapStorageVirtualMachine) GetConnectionDetailsMapping

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

GetConnectionDetailsMapping for this OntapStorageVirtualMachine

func (*OntapStorageVirtualMachine) GetDeletionPolicy

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

GetDeletionPolicy of this OntapStorageVirtualMachine.

func (*OntapStorageVirtualMachine) GetID

func (tr *OntapStorageVirtualMachine) GetID() string

GetID returns ID of underlying Terraform resource of this OntapStorageVirtualMachine

func (*OntapStorageVirtualMachine) GetInitParameters

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

GetInitParameters of this OntapStorageVirtualMachine

func (*OntapStorageVirtualMachine) GetManagementPolicies

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

GetManagementPolicies of this OntapStorageVirtualMachine.

func (*OntapStorageVirtualMachine) GetMergedParameters

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

GetInitParameters of this OntapStorageVirtualMachine

func (*OntapStorageVirtualMachine) GetObservation

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

GetObservation of this OntapStorageVirtualMachine

func (*OntapStorageVirtualMachine) GetParameters

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

GetParameters of this OntapStorageVirtualMachine

func (*OntapStorageVirtualMachine) GetProviderConfigReference

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

GetProviderConfigReference of this OntapStorageVirtualMachine.

func (*OntapStorageVirtualMachine) GetPublishConnectionDetailsTo

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

GetPublishConnectionDetailsTo of this OntapStorageVirtualMachine.

func (*OntapStorageVirtualMachine) GetTerraformResourceType

func (mg *OntapStorageVirtualMachine) GetTerraformResourceType() string

GetTerraformResourceType returns Terraform resource type for this OntapStorageVirtualMachine

func (*OntapStorageVirtualMachine) GetTerraformSchemaVersion

func (tr *OntapStorageVirtualMachine) GetTerraformSchemaVersion() int

GetTerraformSchemaVersion returns the associated Terraform schema version

func (*OntapStorageVirtualMachine) GetWriteConnectionSecretToReference

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

GetWriteConnectionSecretToReference of this OntapStorageVirtualMachine.

func (*OntapStorageVirtualMachine) Hub

func (tr *OntapStorageVirtualMachine) Hub()

Hub marks this type as a conversion hub.

func (*OntapStorageVirtualMachine) LateInitialize

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

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

func (*OntapStorageVirtualMachine) ResolveReferences

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

ResolveReferences of this OntapStorageVirtualMachine.

func (*OntapStorageVirtualMachine) SetConditions

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

SetConditions of this OntapStorageVirtualMachine.

func (*OntapStorageVirtualMachine) SetDeletionPolicy

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

SetDeletionPolicy of this OntapStorageVirtualMachine.

func (*OntapStorageVirtualMachine) SetManagementPolicies

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

SetManagementPolicies of this OntapStorageVirtualMachine.

func (*OntapStorageVirtualMachine) SetObservation

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

SetObservation for this OntapStorageVirtualMachine

func (*OntapStorageVirtualMachine) SetParameters

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

SetParameters for this OntapStorageVirtualMachine

func (*OntapStorageVirtualMachine) SetProviderConfigReference

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

SetProviderConfigReference of this OntapStorageVirtualMachine.

func (*OntapStorageVirtualMachine) SetPublishConnectionDetailsTo

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

SetPublishConnectionDetailsTo of this OntapStorageVirtualMachine.

func (*OntapStorageVirtualMachine) SetWriteConnectionSecretToReference

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

SetWriteConnectionSecretToReference of this OntapStorageVirtualMachine.

type OntapStorageVirtualMachineEndpointsInitParameters

type OntapStorageVirtualMachineEndpointsInitParameters struct {
}

func (*OntapStorageVirtualMachineEndpointsInitParameters) DeepCopy

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

func (*OntapStorageVirtualMachineEndpointsInitParameters) DeepCopyInto

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

type OntapStorageVirtualMachineEndpointsObservation

type OntapStorageVirtualMachineEndpointsObservation struct {

	// An endpoint for accessing data on your storage virtual machine via iSCSI protocol. See Endpoint.
	ISCSI []ISCSIObservation `json:"iscsi,omitempty" tf:"iscsi,omitempty"`

	// An endpoint for managing your file system using the NetApp ONTAP CLI and NetApp ONTAP API. See Endpoint.
	Management []EndpointsManagementObservation `json:"management,omitempty" tf:"management,omitempty"`

	// An endpoint for accessing data on your storage virtual machine via NFS protocol. See Endpoint.
	NFS []NFSObservation `json:"nfs,omitempty" tf:"nfs,omitempty"`

	// An endpoint for accessing data on your storage virtual machine via SMB protocol. This is only set if an active_directory_configuration has been set. See Endpoint.
	SMB []SMBObservation `json:"smb,omitempty" tf:"smb,omitempty"`
}

func (*OntapStorageVirtualMachineEndpointsObservation) DeepCopy

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

func (*OntapStorageVirtualMachineEndpointsObservation) DeepCopyInto

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

type OntapStorageVirtualMachineEndpointsParameters

type OntapStorageVirtualMachineEndpointsParameters struct {
}

func (*OntapStorageVirtualMachineEndpointsParameters) DeepCopy

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

func (*OntapStorageVirtualMachineEndpointsParameters) DeepCopyInto

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

type OntapStorageVirtualMachineInitParameters

type OntapStorageVirtualMachineInitParameters struct {

	// Configuration block that Amazon FSx uses to join the FSx ONTAP Storage Virtual Machine(SVM) to your Microsoft Active Directory (AD) directory. Detailed below.
	ActiveDirectoryConfiguration *ActiveDirectoryConfigurationInitParameters `json:"activeDirectoryConfiguration,omitempty" tf:"active_directory_configuration,omitempty"`

	// The ID of the Amazon FSx ONTAP File System that this SVM will be created on.
	// +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/fsx/v1beta2.OntapFileSystem
	// +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractResourceID()
	FileSystemID *string `json:"fileSystemId,omitempty" tf:"file_system_id,omitempty"`

	// Reference to a OntapFileSystem in fsx to populate fileSystemId.
	// +kubebuilder:validation:Optional
	FileSystemIDRef *v1.Reference `json:"fileSystemIdRef,omitempty" tf:"-"`

	// Selector for a OntapFileSystem in fsx to populate fileSystemId.
	// +kubebuilder:validation:Optional
	FileSystemIDSelector *v1.Selector `json:"fileSystemIdSelector,omitempty" tf:"-"`

	// The name of the SVM. You can use a maximum of 47 alphanumeric characters, plus the underscore (_) special character.
	Name *string `json:"name,omitempty" tf:"name,omitempty"`

	// Specifies the root volume security style, Valid values are UNIX, NTFS, and MIXED. All volumes created under this SVM will inherit the root security style unless the security style is specified on the volume. Default value is UNIX.
	RootVolumeSecurityStyle *string `json:"rootVolumeSecurityStyle,omitempty" tf:"root_volume_security_style,omitempty"`

	// Specifies the password to use when logging on to the SVM using a secure shell (SSH) connection to the SVM's management endpoint. Doing so enables you to manage the SVM using the NetApp ONTAP CLI or REST API. If you do not specify a password, you can still use the file system's fsxadmin user to manage the SVM.
	SvmAdminPasswordSecretRef *v1.SecretKeySelector `json:"svmAdminPasswordSecretRef,omitempty" tf:"-"`

	// Key-value map of resource tags.
	// +mapType=granular
	Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"`
}

func (*OntapStorageVirtualMachineInitParameters) DeepCopy

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

func (*OntapStorageVirtualMachineInitParameters) DeepCopyInto

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

type OntapStorageVirtualMachineList

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

OntapStorageVirtualMachineList contains a list of OntapStorageVirtualMachines

func (*OntapStorageVirtualMachineList) DeepCopy

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

func (*OntapStorageVirtualMachineList) DeepCopyInto

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

func (*OntapStorageVirtualMachineList) DeepCopyObject

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

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

func (*OntapStorageVirtualMachineList) GetItems

GetItems of this OntapStorageVirtualMachineList.

type OntapStorageVirtualMachineObservation

type OntapStorageVirtualMachineObservation struct {

	// Configuration block that Amazon FSx uses to join the FSx ONTAP Storage Virtual Machine(SVM) to your Microsoft Active Directory (AD) directory. Detailed below.
	ActiveDirectoryConfiguration *ActiveDirectoryConfigurationObservation `json:"activeDirectoryConfiguration,omitempty" tf:"active_directory_configuration,omitempty"`

	// Amazon Resource Name of the storage virtual machine.
	Arn *string `json:"arn,omitempty" tf:"arn,omitempty"`

	// The endpoints that are used to access data or to manage the storage virtual machine using the NetApp ONTAP CLI, REST API, or NetApp SnapMirror. See Endpoints below.
	Endpoints []OntapStorageVirtualMachineEndpointsObservation `json:"endpoints,omitempty" tf:"endpoints,omitempty"`

	// The ID of the Amazon FSx ONTAP File System that this SVM will be created on.
	FileSystemID *string `json:"fileSystemId,omitempty" tf:"file_system_id,omitempty"`

	// Identifier of the storage virtual machine, e.g., svm-12345678
	ID *string `json:"id,omitempty" tf:"id,omitempty"`

	// The name of the SVM. You can use a maximum of 47 alphanumeric characters, plus the underscore (_) special character.
	Name *string `json:"name,omitempty" tf:"name,omitempty"`

	// Specifies the root volume security style, Valid values are UNIX, NTFS, and MIXED. All volumes created under this SVM will inherit the root security style unless the security style is specified on the volume. Default value is UNIX.
	RootVolumeSecurityStyle *string `json:"rootVolumeSecurityStyle,omitempty" tf:"root_volume_security_style,omitempty"`

	// Describes the SVM's subtype, e.g. DEFAULT
	Subtype *string `json:"subtype,omitempty" tf:"subtype,omitempty"`

	// Key-value map of resource tags.
	// +mapType=granular
	Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"`

	// A map of tags assigned to the resource, including those inherited from the provider default_tags configuration block.
	// +mapType=granular
	TagsAll map[string]*string `json:"tagsAll,omitempty" tf:"tags_all,omitempty"`

	// The SVM's UUID (universally unique identifier).
	UUID *string `json:"uuid,omitempty" tf:"uuid,omitempty"`
}

func (*OntapStorageVirtualMachineObservation) DeepCopy

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

func (*OntapStorageVirtualMachineObservation) DeepCopyInto

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

type OntapStorageVirtualMachineParameters

type OntapStorageVirtualMachineParameters struct {

	// Configuration block that Amazon FSx uses to join the FSx ONTAP Storage Virtual Machine(SVM) to your Microsoft Active Directory (AD) directory. Detailed below.
	// +kubebuilder:validation:Optional
	ActiveDirectoryConfiguration *ActiveDirectoryConfigurationParameters `json:"activeDirectoryConfiguration,omitempty" tf:"active_directory_configuration,omitempty"`

	// The ID of the Amazon FSx ONTAP File System that this SVM will be created on.
	// +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/fsx/v1beta2.OntapFileSystem
	// +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractResourceID()
	// +kubebuilder:validation:Optional
	FileSystemID *string `json:"fileSystemId,omitempty" tf:"file_system_id,omitempty"`

	// Reference to a OntapFileSystem in fsx to populate fileSystemId.
	// +kubebuilder:validation:Optional
	FileSystemIDRef *v1.Reference `json:"fileSystemIdRef,omitempty" tf:"-"`

	// Selector for a OntapFileSystem in fsx to populate fileSystemId.
	// +kubebuilder:validation:Optional
	FileSystemIDSelector *v1.Selector `json:"fileSystemIdSelector,omitempty" tf:"-"`

	// The name of the SVM. You can use a maximum of 47 alphanumeric characters, plus the underscore (_) special character.
	// +kubebuilder:validation:Optional
	Name *string `json:"name,omitempty" tf:"name,omitempty"`

	// Region is the region you'd like your resource to be created in.
	// +upjet:crd:field:TFTag=-
	// +kubebuilder:validation:Required
	Region *string `json:"region" tf:"-"`

	// Specifies the root volume security style, Valid values are UNIX, NTFS, and MIXED. All volumes created under this SVM will inherit the root security style unless the security style is specified on the volume. Default value is UNIX.
	// +kubebuilder:validation:Optional
	RootVolumeSecurityStyle *string `json:"rootVolumeSecurityStyle,omitempty" tf:"root_volume_security_style,omitempty"`

	// Specifies the password to use when logging on to the SVM using a secure shell (SSH) connection to the SVM's management endpoint. Doing so enables you to manage the SVM using the NetApp ONTAP CLI or REST API. If you do not specify a password, you can still use the file system's fsxadmin user to manage the SVM.
	// +kubebuilder:validation:Optional
	SvmAdminPasswordSecretRef *v1.SecretKeySelector `json:"svmAdminPasswordSecretRef,omitempty" tf:"-"`

	// Key-value map of resource tags.
	// +kubebuilder:validation:Optional
	// +mapType=granular
	Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"`
}

func (*OntapStorageVirtualMachineParameters) DeepCopy

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

func (*OntapStorageVirtualMachineParameters) DeepCopyInto

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

type OntapStorageVirtualMachineSpec

type OntapStorageVirtualMachineSpec struct {
	v1.ResourceSpec `json:",inline"`
	ForProvider     OntapStorageVirtualMachineParameters `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 OntapStorageVirtualMachineInitParameters `json:"initProvider,omitempty"`
}

OntapStorageVirtualMachineSpec defines the desired state of OntapStorageVirtualMachine

func (*OntapStorageVirtualMachineSpec) DeepCopy

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

func (*OntapStorageVirtualMachineSpec) DeepCopyInto

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

type OntapStorageVirtualMachineStatus

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

OntapStorageVirtualMachineStatus defines the observed state of OntapStorageVirtualMachine.

func (*OntapStorageVirtualMachineStatus) DeepCopy

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

func (*OntapStorageVirtualMachineStatus) DeepCopyInto

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

type RootSquashConfigurationInitParameters

type RootSquashConfigurationInitParameters struct {

	// When root squash is enabled, you can optionally specify an array of NIDs of clients for which root squash does not apply. A client NID is a Lustre Network Identifier used to uniquely identify a client. You can specify the NID as either a single address or a range of addresses: 1. A single address is described in standard Lustre NID format by specifying the client’s IP address followed by the Lustre network ID (for example, 10.0.1.6@tcp). 2. An address range is described using a dash to separate the range (for example, 10.0.[2-10].[1-255]@tcp).
	// +listType=set
	NoSquashNids []*string `json:"noSquashNids,omitempty" tf:"no_squash_nids,omitempty"`

	// You enable root squash by setting a user ID (UID) and group ID (GID) for the file system in the format UID:GID (for example, 365534:65534). The UID and GID values can range from 0 to 4294967294.
	RootSquash *string `json:"rootSquash,omitempty" tf:"root_squash,omitempty"`
}

func (*RootSquashConfigurationInitParameters) DeepCopy

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

func (*RootSquashConfigurationInitParameters) DeepCopyInto

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

type RootSquashConfigurationObservation

type RootSquashConfigurationObservation struct {

	// When root squash is enabled, you can optionally specify an array of NIDs of clients for which root squash does not apply. A client NID is a Lustre Network Identifier used to uniquely identify a client. You can specify the NID as either a single address or a range of addresses: 1. A single address is described in standard Lustre NID format by specifying the client’s IP address followed by the Lustre network ID (for example, 10.0.1.6@tcp). 2. An address range is described using a dash to separate the range (for example, 10.0.[2-10].[1-255]@tcp).
	// +listType=set
	NoSquashNids []*string `json:"noSquashNids,omitempty" tf:"no_squash_nids,omitempty"`

	// You enable root squash by setting a user ID (UID) and group ID (GID) for the file system in the format UID:GID (for example, 365534:65534). The UID and GID values can range from 0 to 4294967294.
	RootSquash *string `json:"rootSquash,omitempty" tf:"root_squash,omitempty"`
}

func (*RootSquashConfigurationObservation) DeepCopy

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

func (*RootSquashConfigurationObservation) DeepCopyInto

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

type RootSquashConfigurationParameters

type RootSquashConfigurationParameters struct {

	// When root squash is enabled, you can optionally specify an array of NIDs of clients for which root squash does not apply. A client NID is a Lustre Network Identifier used to uniquely identify a client. You can specify the NID as either a single address or a range of addresses: 1. A single address is described in standard Lustre NID format by specifying the client’s IP address followed by the Lustre network ID (for example, 10.0.1.6@tcp). 2. An address range is described using a dash to separate the range (for example, 10.0.[2-10].[1-255]@tcp).
	// +kubebuilder:validation:Optional
	// +listType=set
	NoSquashNids []*string `json:"noSquashNids,omitempty" tf:"no_squash_nids,omitempty"`

	// You enable root squash by setting a user ID (UID) and group ID (GID) for the file system in the format UID:GID (for example, 365534:65534). The UID and GID values can range from 0 to 4294967294.
	// +kubebuilder:validation:Optional
	RootSquash *string `json:"rootSquash,omitempty" tf:"root_squash,omitempty"`
}

func (*RootSquashConfigurationParameters) DeepCopy

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

func (*RootSquashConfigurationParameters) DeepCopyInto

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

type S3InitParameters

type S3InitParameters struct {

	// Specifies the type of updated objects that will be automatically exported from your file system to the linked S3 bucket. See the events configuration block.
	AutoExportPolicy *AutoExportPolicyInitParameters `json:"autoExportPolicy,omitempty" tf:"auto_export_policy,omitempty"`

	// Specifies the type of updated objects that will be automatically imported from the linked S3 bucket to your file system. See the events configuration block.
	AutoImportPolicy *AutoImportPolicyInitParameters `json:"autoImportPolicy,omitempty" tf:"auto_import_policy,omitempty"`
}

func (*S3InitParameters) DeepCopy

func (in *S3InitParameters) DeepCopy() *S3InitParameters

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

func (*S3InitParameters) DeepCopyInto

func (in *S3InitParameters) DeepCopyInto(out *S3InitParameters)

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

type S3Observation

type S3Observation struct {

	// Specifies the type of updated objects that will be automatically exported from your file system to the linked S3 bucket. See the events configuration block.
	AutoExportPolicy *AutoExportPolicyObservation `json:"autoExportPolicy,omitempty" tf:"auto_export_policy,omitempty"`

	// Specifies the type of updated objects that will be automatically imported from the linked S3 bucket to your file system. See the events configuration block.
	AutoImportPolicy *AutoImportPolicyObservation `json:"autoImportPolicy,omitempty" tf:"auto_import_policy,omitempty"`
}

func (*S3Observation) DeepCopy

func (in *S3Observation) DeepCopy() *S3Observation

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

func (*S3Observation) DeepCopyInto

func (in *S3Observation) DeepCopyInto(out *S3Observation)

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

type S3Parameters

type S3Parameters struct {

	// Specifies the type of updated objects that will be automatically exported from your file system to the linked S3 bucket. See the events configuration block.
	// +kubebuilder:validation:Optional
	AutoExportPolicy *AutoExportPolicyParameters `json:"autoExportPolicy,omitempty" tf:"auto_export_policy,omitempty"`

	// Specifies the type of updated objects that will be automatically imported from the linked S3 bucket to your file system. See the events configuration block.
	// +kubebuilder:validation:Optional
	AutoImportPolicy *AutoImportPolicyParameters `json:"autoImportPolicy,omitempty" tf:"auto_import_policy,omitempty"`
}

func (*S3Parameters) DeepCopy

func (in *S3Parameters) DeepCopy() *S3Parameters

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

func (*S3Parameters) DeepCopyInto

func (in *S3Parameters) DeepCopyInto(out *S3Parameters)

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

type SMBInitParameters

type SMBInitParameters struct {
}

func (*SMBInitParameters) DeepCopy

func (in *SMBInitParameters) DeepCopy() *SMBInitParameters

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

func (*SMBInitParameters) DeepCopyInto

func (in *SMBInitParameters) DeepCopyInto(out *SMBInitParameters)

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

type SMBObservation

type SMBObservation struct {

	// The Domain Name Service (DNS) name for the storage virtual machine. You can mount your storage virtual machine using its DNS name.
	DNSName *string `json:"dnsName,omitempty" tf:"dns_name,omitempty"`

	// IP addresses of the storage virtual machine endpoint.
	// +listType=set
	IPAddresses []*string `json:"ipAddresses,omitempty" tf:"ip_addresses,omitempty"`
}

func (*SMBObservation) DeepCopy

func (in *SMBObservation) DeepCopy() *SMBObservation

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

func (*SMBObservation) DeepCopyInto

func (in *SMBObservation) DeepCopyInto(out *SMBObservation)

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

type SMBParameters

type SMBParameters struct {
}

func (*SMBParameters) DeepCopy

func (in *SMBParameters) DeepCopy() *SMBParameters

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

func (*SMBParameters) DeepCopyInto

func (in *SMBParameters) DeepCopyInto(out *SMBParameters)

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

type SelfManagedActiveDirectoryConfigurationInitParameters

type SelfManagedActiveDirectoryConfigurationInitParameters struct {

	// A list of up to three IP addresses of DNS servers or domain controllers in the self-managed AD directory.
	// +listType=set
	DNSIps []*string `json:"dnsIps,omitempty" tf:"dns_ips,omitempty"`

	// The fully qualified domain name of the self-managed AD directory. For example, corp.example.com.
	DomainName *string `json:"domainName,omitempty" tf:"domain_name,omitempty"`

	// The name of the domain group whose members are granted administrative privileges for the SVM. The group that you specify must already exist in your domain. Defaults to Domain Admins.
	FileSystemAdministratorsGroup *string `json:"fileSystemAdministratorsGroup,omitempty" tf:"file_system_administrators_group,omitempty"`

	// The fully qualified distinguished name of the organizational unit within your self-managed AD directory that the Windows File Server instance will join. For example, OU=FSx,DC=yourdomain,DC=corp,DC=com. Only accepts OU as the direct parent of the SVM. If none is provided, the SVM is created in the default location of your self-managed AD directory. To learn more, see RFC 2253.
	OrganizationalUnitDistinguishedName *string `json:"organizationalUnitDistinguishedName,omitempty" tf:"organizational_unit_distinguished_name,omitempty"`

	// The password for the service account on your self-managed AD domain that Amazon FSx will use to join to your AD domain.
	PasswordSecretRef v1.SecretKeySelector `json:"passwordSecretRef" tf:"-"`

	// The user name for the service account on your self-managed AD domain that Amazon FSx will use to join to your AD domain.
	Username *string `json:"username,omitempty" tf:"username,omitempty"`
}

func (*SelfManagedActiveDirectoryConfigurationInitParameters) DeepCopy

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

func (*SelfManagedActiveDirectoryConfigurationInitParameters) DeepCopyInto

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

type SelfManagedActiveDirectoryConfigurationObservation

type SelfManagedActiveDirectoryConfigurationObservation struct {

	// A list of up to three IP addresses of DNS servers or domain controllers in the self-managed AD directory.
	// +listType=set
	DNSIps []*string `json:"dnsIps,omitempty" tf:"dns_ips,omitempty"`

	// The fully qualified domain name of the self-managed AD directory. For example, corp.example.com.
	DomainName *string `json:"domainName,omitempty" tf:"domain_name,omitempty"`

	// The name of the domain group whose members are granted administrative privileges for the SVM. The group that you specify must already exist in your domain. Defaults to Domain Admins.
	FileSystemAdministratorsGroup *string `json:"fileSystemAdministratorsGroup,omitempty" tf:"file_system_administrators_group,omitempty"`

	// The fully qualified distinguished name of the organizational unit within your self-managed AD directory that the Windows File Server instance will join. For example, OU=FSx,DC=yourdomain,DC=corp,DC=com. Only accepts OU as the direct parent of the SVM. If none is provided, the SVM is created in the default location of your self-managed AD directory. To learn more, see RFC 2253.
	OrganizationalUnitDistinguishedName *string `json:"organizationalUnitDistinguishedName,omitempty" tf:"organizational_unit_distinguished_name,omitempty"`

	// The user name for the service account on your self-managed AD domain that Amazon FSx will use to join to your AD domain.
	Username *string `json:"username,omitempty" tf:"username,omitempty"`
}

func (*SelfManagedActiveDirectoryConfigurationObservation) DeepCopy

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

func (*SelfManagedActiveDirectoryConfigurationObservation) DeepCopyInto

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

type SelfManagedActiveDirectoryConfigurationParameters

type SelfManagedActiveDirectoryConfigurationParameters struct {

	// A list of up to three IP addresses of DNS servers or domain controllers in the self-managed AD directory.
	// +kubebuilder:validation:Optional
	// +listType=set
	DNSIps []*string `json:"dnsIps" tf:"dns_ips,omitempty"`

	// The fully qualified domain name of the self-managed AD directory. For example, corp.example.com.
	// +kubebuilder:validation:Optional
	DomainName *string `json:"domainName" tf:"domain_name,omitempty"`

	// The name of the domain group whose members are granted administrative privileges for the SVM. The group that you specify must already exist in your domain. Defaults to Domain Admins.
	// +kubebuilder:validation:Optional
	FileSystemAdministratorsGroup *string `json:"fileSystemAdministratorsGroup,omitempty" tf:"file_system_administrators_group,omitempty"`

	// The fully qualified distinguished name of the organizational unit within your self-managed AD directory that the Windows File Server instance will join. For example, OU=FSx,DC=yourdomain,DC=corp,DC=com. Only accepts OU as the direct parent of the SVM. If none is provided, the SVM is created in the default location of your self-managed AD directory. To learn more, see RFC 2253.
	// +kubebuilder:validation:Optional
	OrganizationalUnitDistinguishedName *string `json:"organizationalUnitDistinguishedName,omitempty" tf:"organizational_unit_distinguished_name,omitempty"`

	// The password for the service account on your self-managed AD domain that Amazon FSx will use to join to your AD domain.
	// +kubebuilder:validation:Optional
	PasswordSecretRef v1.SecretKeySelector `json:"passwordSecretRef" tf:"-"`

	// The user name for the service account on your self-managed AD domain that Amazon FSx will use to join to your AD domain.
	// +kubebuilder:validation:Optional
	Username *string `json:"username" tf:"username,omitempty"`
}

func (*SelfManagedActiveDirectoryConfigurationParameters) DeepCopy

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

func (*SelfManagedActiveDirectoryConfigurationParameters) DeepCopyInto

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

type SelfManagedActiveDirectoryInitParameters

type SelfManagedActiveDirectoryInitParameters struct {

	// A list of up to two IP addresses of DNS servers or domain controllers in the self-managed AD directory. The IP addresses need to be either in the same VPC CIDR range as the file system or in the private IP version 4 (IPv4) address ranges as specified in RFC 1918.
	// +listType=set
	DNSIps []*string `json:"dnsIps,omitempty" tf:"dns_ips,omitempty"`

	// The fully qualified domain name of the self-managed AD directory. For example, corp.example.com.
	DomainName *string `json:"domainName,omitempty" tf:"domain_name,omitempty"`

	// The name of the domain group whose members are granted administrative privileges for the file system. Administrative privileges include taking ownership of files and folders, and setting audit controls (audit ACLs) on files and folders. The group that you specify must already exist in your domain. Defaults to Domain Admins.
	FileSystemAdministratorsGroup *string `json:"fileSystemAdministratorsGroup,omitempty" tf:"file_system_administrators_group,omitempty"`

	// The fully qualified distinguished name of the organizational unit within your self-managed AD directory that the Windows File Server instance will join. For example, OU=FSx,DC=yourdomain,DC=corp,DC=com. Only accepts OU as the direct parent of the file system. If none is provided, the FSx file system is created in the default location of your self-managed AD directory. To learn more, see RFC 2253.
	OrganizationalUnitDistinguishedName *string `json:"organizationalUnitDistinguishedName,omitempty" tf:"organizational_unit_distinguished_name,omitempty"`

	// The password for the service account on your self-managed AD domain that Amazon FSx will use to join to your AD domain.
	PasswordSecretRef v1.SecretKeySelector `json:"passwordSecretRef" tf:"-"`

	// The user name for the service account on your self-managed AD domain that Amazon FSx will use to join to your AD domain.
	Username *string `json:"username,omitempty" tf:"username,omitempty"`
}

func (*SelfManagedActiveDirectoryInitParameters) DeepCopy

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

func (*SelfManagedActiveDirectoryInitParameters) DeepCopyInto

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

type SelfManagedActiveDirectoryObservation

type SelfManagedActiveDirectoryObservation struct {

	// A list of up to two IP addresses of DNS servers or domain controllers in the self-managed AD directory. The IP addresses need to be either in the same VPC CIDR range as the file system or in the private IP version 4 (IPv4) address ranges as specified in RFC 1918.
	// +listType=set
	DNSIps []*string `json:"dnsIps,omitempty" tf:"dns_ips,omitempty"`

	// The fully qualified domain name of the self-managed AD directory. For example, corp.example.com.
	DomainName *string `json:"domainName,omitempty" tf:"domain_name,omitempty"`

	// The name of the domain group whose members are granted administrative privileges for the file system. Administrative privileges include taking ownership of files and folders, and setting audit controls (audit ACLs) on files and folders. The group that you specify must already exist in your domain. Defaults to Domain Admins.
	FileSystemAdministratorsGroup *string `json:"fileSystemAdministratorsGroup,omitempty" tf:"file_system_administrators_group,omitempty"`

	// The fully qualified distinguished name of the organizational unit within your self-managed AD directory that the Windows File Server instance will join. For example, OU=FSx,DC=yourdomain,DC=corp,DC=com. Only accepts OU as the direct parent of the file system. If none is provided, the FSx file system is created in the default location of your self-managed AD directory. To learn more, see RFC 2253.
	OrganizationalUnitDistinguishedName *string `json:"organizationalUnitDistinguishedName,omitempty" tf:"organizational_unit_distinguished_name,omitempty"`

	// The user name for the service account on your self-managed AD domain that Amazon FSx will use to join to your AD domain.
	Username *string `json:"username,omitempty" tf:"username,omitempty"`
}

func (*SelfManagedActiveDirectoryObservation) DeepCopy

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

func (*SelfManagedActiveDirectoryObservation) DeepCopyInto

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

type SelfManagedActiveDirectoryParameters

type SelfManagedActiveDirectoryParameters struct {

	// A list of up to two IP addresses of DNS servers or domain controllers in the self-managed AD directory. The IP addresses need to be either in the same VPC CIDR range as the file system or in the private IP version 4 (IPv4) address ranges as specified in RFC 1918.
	// +kubebuilder:validation:Optional
	// +listType=set
	DNSIps []*string `json:"dnsIps" tf:"dns_ips,omitempty"`

	// The fully qualified domain name of the self-managed AD directory. For example, corp.example.com.
	// +kubebuilder:validation:Optional
	DomainName *string `json:"domainName" tf:"domain_name,omitempty"`

	// The name of the domain group whose members are granted administrative privileges for the file system. Administrative privileges include taking ownership of files and folders, and setting audit controls (audit ACLs) on files and folders. The group that you specify must already exist in your domain. Defaults to Domain Admins.
	// +kubebuilder:validation:Optional
	FileSystemAdministratorsGroup *string `json:"fileSystemAdministratorsGroup,omitempty" tf:"file_system_administrators_group,omitempty"`

	// The fully qualified distinguished name of the organizational unit within your self-managed AD directory that the Windows File Server instance will join. For example, OU=FSx,DC=yourdomain,DC=corp,DC=com. Only accepts OU as the direct parent of the file system. If none is provided, the FSx file system is created in the default location of your self-managed AD directory. To learn more, see RFC 2253.
	// +kubebuilder:validation:Optional
	OrganizationalUnitDistinguishedName *string `json:"organizationalUnitDistinguishedName,omitempty" tf:"organizational_unit_distinguished_name,omitempty"`

	// The password for the service account on your self-managed AD domain that Amazon FSx will use to join to your AD domain.
	// +kubebuilder:validation:Optional
	PasswordSecretRef v1.SecretKeySelector `json:"passwordSecretRef" tf:"-"`

	// The user name for the service account on your self-managed AD domain that Amazon FSx will use to join to your AD domain.
	// +kubebuilder:validation:Optional
	Username *string `json:"username" tf:"username,omitempty"`
}

func (*SelfManagedActiveDirectoryParameters) DeepCopy

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

func (*SelfManagedActiveDirectoryParameters) DeepCopyInto

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

type WindowsFileSystem

type WindowsFileSystem 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.throughputCapacity) || (has(self.initProvider) && has(self.initProvider.throughputCapacity))",message="spec.forProvider.throughputCapacity is a required parameter"
	Spec   WindowsFileSystemSpec   `json:"spec"`
	Status WindowsFileSystemStatus `json:"status,omitempty"`
}

WindowsFileSystem is the Schema for the WindowsFileSystems API. Manages a FSx Windows File System. +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,aws}

func (*WindowsFileSystem) DeepCopy

func (in *WindowsFileSystem) DeepCopy() *WindowsFileSystem

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

func (*WindowsFileSystem) DeepCopyInto

func (in *WindowsFileSystem) DeepCopyInto(out *WindowsFileSystem)

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

func (*WindowsFileSystem) DeepCopyObject

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

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

func (*WindowsFileSystem) GetCondition

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

GetCondition of this WindowsFileSystem.

func (*WindowsFileSystem) GetConnectionDetailsMapping

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

GetConnectionDetailsMapping for this WindowsFileSystem

func (*WindowsFileSystem) GetDeletionPolicy

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

GetDeletionPolicy of this WindowsFileSystem.

func (*WindowsFileSystem) GetID

func (tr *WindowsFileSystem) GetID() string

GetID returns ID of underlying Terraform resource of this WindowsFileSystem

func (*WindowsFileSystem) GetInitParameters

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

GetInitParameters of this WindowsFileSystem

func (*WindowsFileSystem) GetManagementPolicies

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

GetManagementPolicies of this WindowsFileSystem.

func (*WindowsFileSystem) GetMergedParameters

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

GetInitParameters of this WindowsFileSystem

func (*WindowsFileSystem) GetObservation

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

GetObservation of this WindowsFileSystem

func (*WindowsFileSystem) GetParameters

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

GetParameters of this WindowsFileSystem

func (*WindowsFileSystem) GetProviderConfigReference

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

GetProviderConfigReference of this WindowsFileSystem.

func (*WindowsFileSystem) GetPublishConnectionDetailsTo

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

GetPublishConnectionDetailsTo of this WindowsFileSystem.

func (*WindowsFileSystem) GetTerraformResourceType

func (mg *WindowsFileSystem) GetTerraformResourceType() string

GetTerraformResourceType returns Terraform resource type for this WindowsFileSystem

func (*WindowsFileSystem) GetTerraformSchemaVersion

func (tr *WindowsFileSystem) GetTerraformSchemaVersion() int

GetTerraformSchemaVersion returns the associated Terraform schema version

func (*WindowsFileSystem) GetWriteConnectionSecretToReference

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

GetWriteConnectionSecretToReference of this WindowsFileSystem.

func (*WindowsFileSystem) Hub

func (tr *WindowsFileSystem) Hub()

Hub marks this type as a conversion hub.

func (*WindowsFileSystem) LateInitialize

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

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

func (*WindowsFileSystem) ResolveReferences

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

ResolveReferences of this WindowsFileSystem.

func (*WindowsFileSystem) SetConditions

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

SetConditions of this WindowsFileSystem.

func (*WindowsFileSystem) SetDeletionPolicy

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

SetDeletionPolicy of this WindowsFileSystem.

func (*WindowsFileSystem) SetManagementPolicies

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

SetManagementPolicies of this WindowsFileSystem.

func (*WindowsFileSystem) SetObservation

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

SetObservation for this WindowsFileSystem

func (*WindowsFileSystem) SetParameters

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

SetParameters for this WindowsFileSystem

func (*WindowsFileSystem) SetProviderConfigReference

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

SetProviderConfigReference of this WindowsFileSystem.

func (*WindowsFileSystem) SetPublishConnectionDetailsTo

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

SetPublishConnectionDetailsTo of this WindowsFileSystem.

func (*WindowsFileSystem) SetWriteConnectionSecretToReference

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

SetWriteConnectionSecretToReference of this WindowsFileSystem.

type WindowsFileSystemDiskIopsConfigurationInitParameters

type WindowsFileSystemDiskIopsConfigurationInitParameters struct {

	// The total number of SSD IOPS provisioned for the file system.
	Iops *float64 `json:"iops,omitempty" tf:"iops,omitempty"`

	// Specifies whether the number of IOPS for the file system is using the system. Valid values are AUTOMATIC and USER_PROVISIONED. Default value is AUTOMATIC.
	Mode *string `json:"mode,omitempty" tf:"mode,omitempty"`
}

func (*WindowsFileSystemDiskIopsConfigurationInitParameters) DeepCopy

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

func (*WindowsFileSystemDiskIopsConfigurationInitParameters) DeepCopyInto

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

type WindowsFileSystemDiskIopsConfigurationObservation

type WindowsFileSystemDiskIopsConfigurationObservation struct {

	// The total number of SSD IOPS provisioned for the file system.
	Iops *float64 `json:"iops,omitempty" tf:"iops,omitempty"`

	// Specifies whether the number of IOPS for the file system is using the system. Valid values are AUTOMATIC and USER_PROVISIONED. Default value is AUTOMATIC.
	Mode *string `json:"mode,omitempty" tf:"mode,omitempty"`
}

func (*WindowsFileSystemDiskIopsConfigurationObservation) DeepCopy

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

func (*WindowsFileSystemDiskIopsConfigurationObservation) DeepCopyInto

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

type WindowsFileSystemDiskIopsConfigurationParameters

type WindowsFileSystemDiskIopsConfigurationParameters struct {

	// The total number of SSD IOPS provisioned for the file system.
	// +kubebuilder:validation:Optional
	Iops *float64 `json:"iops,omitempty" tf:"iops,omitempty"`

	// Specifies whether the number of IOPS for the file system is using the system. Valid values are AUTOMATIC and USER_PROVISIONED. Default value is AUTOMATIC.
	// +kubebuilder:validation:Optional
	Mode *string `json:"mode,omitempty" tf:"mode,omitempty"`
}

func (*WindowsFileSystemDiskIopsConfigurationParameters) DeepCopy

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

func (*WindowsFileSystemDiskIopsConfigurationParameters) DeepCopyInto

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

type WindowsFileSystemInitParameters

type WindowsFileSystemInitParameters struct {

	// The ID for an existing Microsoft Active Directory instance that the file system should join when it's created. Cannot be specified with self_managed_active_directory.
	// +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/ds/v1beta2.Directory
	// +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractResourceID()
	ActiveDirectoryID *string `json:"activeDirectoryId,omitempty" tf:"active_directory_id,omitempty"`

	// Reference to a Directory in ds to populate activeDirectoryId.
	// +kubebuilder:validation:Optional
	ActiveDirectoryIDRef *v1.Reference `json:"activeDirectoryIdRef,omitempty" tf:"-"`

	// Selector for a Directory in ds to populate activeDirectoryId.
	// +kubebuilder:validation:Optional
	ActiveDirectoryIDSelector *v1.Selector `json:"activeDirectoryIdSelector,omitempty" tf:"-"`

	// An array DNS alias names that you want to associate with the Amazon FSx file system.  For more information, see Working with DNS Aliases
	// +listType=set
	Aliases []*string `json:"aliases,omitempty" tf:"aliases,omitempty"`

	// The configuration that Amazon FSx for Windows File Server uses to audit and log user accesses of files, folders, and file shares on the Amazon FSx for Windows File Server file system. See audit_log_configuration Block for details.
	AuditLogConfiguration *AuditLogConfigurationInitParameters `json:"auditLogConfiguration,omitempty" tf:"audit_log_configuration,omitempty"`

	// The number of days to retain automatic backups. Minimum of 0 and maximum of 90. Defaults to 7. Set to 0 to disable.
	AutomaticBackupRetentionDays *float64 `json:"automaticBackupRetentionDays,omitempty" tf:"automatic_backup_retention_days,omitempty"`

	// The ID of the source backup to create the filesystem from.
	BackupID *string `json:"backupId,omitempty" tf:"backup_id,omitempty"`

	// A boolean flag indicating whether tags on the file system should be copied to backups. Defaults to false.
	CopyTagsToBackups *bool `json:"copyTagsToBackups,omitempty" tf:"copy_tags_to_backups,omitempty"`

	// The preferred time (in HH:MM format) to take daily automatic backups, in the UTC time zone.
	DailyAutomaticBackupStartTime *string `json:"dailyAutomaticBackupStartTime,omitempty" tf:"daily_automatic_backup_start_time,omitempty"`

	// Specifies the file system deployment type, valid values are MULTI_AZ_1, SINGLE_AZ_1 and SINGLE_AZ_2. Default value is SINGLE_AZ_1.
	DeploymentType *string `json:"deploymentType,omitempty" tf:"deployment_type,omitempty"`

	// The SSD IOPS configuration for the Amazon FSx for Windows File Server file system. See disk_iops_configuration Block for details.
	DiskIopsConfiguration *WindowsFileSystemDiskIopsConfigurationInitParameters `json:"diskIopsConfiguration,omitempty" tf:"disk_iops_configuration,omitempty"`

	// A map of tags to apply to the file system's final backup.
	// +mapType=granular
	FinalBackupTags map[string]*string `json:"finalBackupTags,omitempty" tf:"final_backup_tags,omitempty"`

	// ARN for the KMS Key to encrypt the file system at rest. Defaults to an AWS managed KMS Key.
	// +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/kms/v1beta1.Key
	// +crossplane:generate:reference:extractor=github.com/upbound/provider-aws/config/common.ARNExtractor()
	KMSKeyID *string `json:"kmsKeyId,omitempty" tf:"kms_key_id,omitempty"`

	// Reference to a Key in kms to populate kmsKeyId.
	// +kubebuilder:validation:Optional
	KMSKeyIDRef *v1.Reference `json:"kmsKeyIdRef,omitempty" tf:"-"`

	// Selector for a Key in kms to populate kmsKeyId.
	// +kubebuilder:validation:Optional
	KMSKeyIDSelector *v1.Selector `json:"kmsKeyIdSelector,omitempty" tf:"-"`

	// Specifies the subnet in which you want the preferred file server to be located. Required for when deployment type is MULTI_AZ_1.
	PreferredSubnetID *string `json:"preferredSubnetId,omitempty" tf:"preferred_subnet_id,omitempty"`

	// References to SecurityGroup in ec2 to populate securityGroupIds.
	// +kubebuilder:validation:Optional
	SecurityGroupIDRefs []v1.Reference `json:"securityGroupIdRefs,omitempty" tf:"-"`

	// Selector for a list of SecurityGroup in ec2 to populate securityGroupIds.
	// +kubebuilder:validation:Optional
	SecurityGroupIDSelector *v1.Selector `json:"securityGroupIdSelector,omitempty" tf:"-"`

	// A list of IDs for the security groups that apply to the specified network interfaces created for file system access. These security groups will apply to all network interfaces.
	// +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/ec2/v1beta1.SecurityGroup
	// +crossplane:generate:reference:refFieldName=SecurityGroupIDRefs
	// +crossplane:generate:reference:selectorFieldName=SecurityGroupIDSelector
	// +listType=set
	SecurityGroupIds []*string `json:"securityGroupIds,omitempty" tf:"security_group_ids,omitempty"`

	// Configuration block that Amazon FSx uses to join the Windows File Server instance to your self-managed (including on-premises) Microsoft Active Directory (AD) directory. Cannot be specified with active_directory_id. See self_managed_active_directory Block for details.
	SelfManagedActiveDirectory *SelfManagedActiveDirectoryInitParameters `json:"selfManagedActiveDirectory,omitempty" tf:"self_managed_active_directory,omitempty"`

	// When enabled, will skip the default final backup taken when the file system is deleted. This configuration must be applied separately before attempting to delete the resource to have the desired behavior. Defaults to false.
	SkipFinalBackup *bool `json:"skipFinalBackup,omitempty" tf:"skip_final_backup,omitempty"`

	// Storage capacity (GiB) of the file system. Minimum of 32 and maximum of 65536. If the storage type is set to HDD the minimum value is 2000. Required when not creating filesystem for a backup.
	StorageCapacity *float64 `json:"storageCapacity,omitempty" tf:"storage_capacity,omitempty"`

	// Specifies the storage type, Valid values are SSD and HDD. HDD is supported on SINGLE_AZ_2 and MULTI_AZ_1 Windows file system deployment types. Default value is SSD.
	StorageType *string `json:"storageType,omitempty" tf:"storage_type,omitempty"`

	// References to Subnet in ec2 to populate subnetIds.
	// +kubebuilder:validation:Optional
	SubnetIDRefs []v1.Reference `json:"subnetIdRefs,omitempty" tf:"-"`

	// Selector for a list of Subnet in ec2 to populate subnetIds.
	// +kubebuilder:validation:Optional
	SubnetIDSelector *v1.Selector `json:"subnetIdSelector,omitempty" tf:"-"`

	// A list of IDs for the subnets that the file system will be accessible from. To specify more than a single subnet set deployment_type to MULTI_AZ_1.
	// +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/ec2/v1beta1.Subnet
	// +crossplane:generate:reference:refFieldName=SubnetIDRefs
	// +crossplane:generate:reference:selectorFieldName=SubnetIDSelector
	SubnetIds []*string `json:"subnetIds,omitempty" tf:"subnet_ids,omitempty"`

	// Key-value map of resource tags.
	// +mapType=granular
	Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"`

	// Throughput (megabytes per second) of the file system in power of 2 increments. Minimum of 8 and maximum of 2048.
	ThroughputCapacity *float64 `json:"throughputCapacity,omitempty" tf:"throughput_capacity,omitempty"`

	// The preferred start time (in d:HH:MM format) to perform weekly maintenance, in the UTC time zone.
	WeeklyMaintenanceStartTime *string `json:"weeklyMaintenanceStartTime,omitempty" tf:"weekly_maintenance_start_time,omitempty"`
}

func (*WindowsFileSystemInitParameters) DeepCopy

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

func (*WindowsFileSystemInitParameters) DeepCopyInto

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

type WindowsFileSystemList

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

WindowsFileSystemList contains a list of WindowsFileSystems

func (*WindowsFileSystemList) DeepCopy

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

func (*WindowsFileSystemList) DeepCopyInto

func (in *WindowsFileSystemList) DeepCopyInto(out *WindowsFileSystemList)

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

func (*WindowsFileSystemList) DeepCopyObject

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

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

func (*WindowsFileSystemList) GetItems

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

GetItems of this WindowsFileSystemList.

type WindowsFileSystemObservation

type WindowsFileSystemObservation struct {

	// The ID for an existing Microsoft Active Directory instance that the file system should join when it's created. Cannot be specified with self_managed_active_directory.
	ActiveDirectoryID *string `json:"activeDirectoryId,omitempty" tf:"active_directory_id,omitempty"`

	// An array DNS alias names that you want to associate with the Amazon FSx file system.  For more information, see Working with DNS Aliases
	// +listType=set
	Aliases []*string `json:"aliases,omitempty" tf:"aliases,omitempty"`

	// Amazon Resource Name of the file system.
	Arn *string `json:"arn,omitempty" tf:"arn,omitempty"`

	// The configuration that Amazon FSx for Windows File Server uses to audit and log user accesses of files, folders, and file shares on the Amazon FSx for Windows File Server file system. See audit_log_configuration Block for details.
	AuditLogConfiguration *AuditLogConfigurationObservation `json:"auditLogConfiguration,omitempty" tf:"audit_log_configuration,omitempty"`

	// The number of days to retain automatic backups. Minimum of 0 and maximum of 90. Defaults to 7. Set to 0 to disable.
	AutomaticBackupRetentionDays *float64 `json:"automaticBackupRetentionDays,omitempty" tf:"automatic_backup_retention_days,omitempty"`

	// The ID of the source backup to create the filesystem from.
	BackupID *string `json:"backupId,omitempty" tf:"backup_id,omitempty"`

	// A boolean flag indicating whether tags on the file system should be copied to backups. Defaults to false.
	CopyTagsToBackups *bool `json:"copyTagsToBackups,omitempty" tf:"copy_tags_to_backups,omitempty"`

	// DNS name for the file system, e.g., fs-12345678.corp.example.com (domain name matching the Active Directory domain name)
	DNSName *string `json:"dnsName,omitempty" tf:"dns_name,omitempty"`

	// The preferred time (in HH:MM format) to take daily automatic backups, in the UTC time zone.
	DailyAutomaticBackupStartTime *string `json:"dailyAutomaticBackupStartTime,omitempty" tf:"daily_automatic_backup_start_time,omitempty"`

	// Specifies the file system deployment type, valid values are MULTI_AZ_1, SINGLE_AZ_1 and SINGLE_AZ_2. Default value is SINGLE_AZ_1.
	DeploymentType *string `json:"deploymentType,omitempty" tf:"deployment_type,omitempty"`

	// The SSD IOPS configuration for the Amazon FSx for Windows File Server file system. See disk_iops_configuration Block for details.
	DiskIopsConfiguration *WindowsFileSystemDiskIopsConfigurationObservation `json:"diskIopsConfiguration,omitempty" tf:"disk_iops_configuration,omitempty"`

	// A map of tags to apply to the file system's final backup.
	// +mapType=granular
	FinalBackupTags map[string]*string `json:"finalBackupTags,omitempty" tf:"final_backup_tags,omitempty"`

	// Identifier of the file system (e.g. fs-12345678).
	ID *string `json:"id,omitempty" tf:"id,omitempty"`

	// ARN for the KMS Key to encrypt the file system at rest. Defaults to an AWS managed KMS Key.
	KMSKeyID *string `json:"kmsKeyId,omitempty" tf:"kms_key_id,omitempty"`

	// Set of Elastic Network Interface identifiers from which the file system is accessible.
	// +listType=set
	NetworkInterfaceIds []*string `json:"networkInterfaceIds,omitempty" tf:"network_interface_ids,omitempty"`

	// AWS account identifier that created the file system.
	OwnerID *string `json:"ownerId,omitempty" tf:"owner_id,omitempty"`

	// The IP address of the primary, or preferred, file server.
	PreferredFileServerIP *string `json:"preferredFileServerIp,omitempty" tf:"preferred_file_server_ip,omitempty"`

	// Specifies the subnet in which you want the preferred file server to be located. Required for when deployment type is MULTI_AZ_1.
	PreferredSubnetID *string `json:"preferredSubnetId,omitempty" tf:"preferred_subnet_id,omitempty"`

	// For MULTI_AZ_1 deployment types, use this endpoint when performing administrative tasks on the file system using Amazon FSx Remote PowerShell. For SINGLE_AZ_1 deployment types, this is the DNS name of the file system.
	RemoteAdministrationEndpoint *string `json:"remoteAdministrationEndpoint,omitempty" tf:"remote_administration_endpoint,omitempty"`

	// A list of IDs for the security groups that apply to the specified network interfaces created for file system access. These security groups will apply to all network interfaces.
	// +listType=set
	SecurityGroupIds []*string `json:"securityGroupIds,omitempty" tf:"security_group_ids,omitempty"`

	// Configuration block that Amazon FSx uses to join the Windows File Server instance to your self-managed (including on-premises) Microsoft Active Directory (AD) directory. Cannot be specified with active_directory_id. See self_managed_active_directory Block for details.
	SelfManagedActiveDirectory *SelfManagedActiveDirectoryObservation `json:"selfManagedActiveDirectory,omitempty" tf:"self_managed_active_directory,omitempty"`

	// When enabled, will skip the default final backup taken when the file system is deleted. This configuration must be applied separately before attempting to delete the resource to have the desired behavior. Defaults to false.
	SkipFinalBackup *bool `json:"skipFinalBackup,omitempty" tf:"skip_final_backup,omitempty"`

	// Storage capacity (GiB) of the file system. Minimum of 32 and maximum of 65536. If the storage type is set to HDD the minimum value is 2000. Required when not creating filesystem for a backup.
	StorageCapacity *float64 `json:"storageCapacity,omitempty" tf:"storage_capacity,omitempty"`

	// Specifies the storage type, Valid values are SSD and HDD. HDD is supported on SINGLE_AZ_2 and MULTI_AZ_1 Windows file system deployment types. Default value is SSD.
	StorageType *string `json:"storageType,omitempty" tf:"storage_type,omitempty"`

	// A list of IDs for the subnets that the file system will be accessible from. To specify more than a single subnet set deployment_type to MULTI_AZ_1.
	SubnetIds []*string `json:"subnetIds,omitempty" tf:"subnet_ids,omitempty"`

	// Key-value map of resource tags.
	// +mapType=granular
	Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"`

	// A map of tags assigned to the resource, including those inherited from the provider default_tags configuration block.
	// +mapType=granular
	TagsAll map[string]*string `json:"tagsAll,omitempty" tf:"tags_all,omitempty"`

	// Throughput (megabytes per second) of the file system in power of 2 increments. Minimum of 8 and maximum of 2048.
	ThroughputCapacity *float64 `json:"throughputCapacity,omitempty" tf:"throughput_capacity,omitempty"`

	// Identifier of the Virtual Private Cloud for the file system.
	VPCID *string `json:"vpcId,omitempty" tf:"vpc_id,omitempty"`

	// The preferred start time (in d:HH:MM format) to perform weekly maintenance, in the UTC time zone.
	WeeklyMaintenanceStartTime *string `json:"weeklyMaintenanceStartTime,omitempty" tf:"weekly_maintenance_start_time,omitempty"`
}

func (*WindowsFileSystemObservation) DeepCopy

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

func (*WindowsFileSystemObservation) DeepCopyInto

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

type WindowsFileSystemParameters

type WindowsFileSystemParameters struct {

	// The ID for an existing Microsoft Active Directory instance that the file system should join when it's created. Cannot be specified with self_managed_active_directory.
	// +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/ds/v1beta2.Directory
	// +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractResourceID()
	// +kubebuilder:validation:Optional
	ActiveDirectoryID *string `json:"activeDirectoryId,omitempty" tf:"active_directory_id,omitempty"`

	// Reference to a Directory in ds to populate activeDirectoryId.
	// +kubebuilder:validation:Optional
	ActiveDirectoryIDRef *v1.Reference `json:"activeDirectoryIdRef,omitempty" tf:"-"`

	// Selector for a Directory in ds to populate activeDirectoryId.
	// +kubebuilder:validation:Optional
	ActiveDirectoryIDSelector *v1.Selector `json:"activeDirectoryIdSelector,omitempty" tf:"-"`

	// An array DNS alias names that you want to associate with the Amazon FSx file system.  For more information, see Working with DNS Aliases
	// +kubebuilder:validation:Optional
	// +listType=set
	Aliases []*string `json:"aliases,omitempty" tf:"aliases,omitempty"`

	// The configuration that Amazon FSx for Windows File Server uses to audit and log user accesses of files, folders, and file shares on the Amazon FSx for Windows File Server file system. See audit_log_configuration Block for details.
	// +kubebuilder:validation:Optional
	AuditLogConfiguration *AuditLogConfigurationParameters `json:"auditLogConfiguration,omitempty" tf:"audit_log_configuration,omitempty"`

	// The number of days to retain automatic backups. Minimum of 0 and maximum of 90. Defaults to 7. Set to 0 to disable.
	// +kubebuilder:validation:Optional
	AutomaticBackupRetentionDays *float64 `json:"automaticBackupRetentionDays,omitempty" tf:"automatic_backup_retention_days,omitempty"`

	// The ID of the source backup to create the filesystem from.
	// +kubebuilder:validation:Optional
	BackupID *string `json:"backupId,omitempty" tf:"backup_id,omitempty"`

	// A boolean flag indicating whether tags on the file system should be copied to backups. Defaults to false.
	// +kubebuilder:validation:Optional
	CopyTagsToBackups *bool `json:"copyTagsToBackups,omitempty" tf:"copy_tags_to_backups,omitempty"`

	// The preferred time (in HH:MM format) to take daily automatic backups, in the UTC time zone.
	// +kubebuilder:validation:Optional
	DailyAutomaticBackupStartTime *string `json:"dailyAutomaticBackupStartTime,omitempty" tf:"daily_automatic_backup_start_time,omitempty"`

	// Specifies the file system deployment type, valid values are MULTI_AZ_1, SINGLE_AZ_1 and SINGLE_AZ_2. Default value is SINGLE_AZ_1.
	// +kubebuilder:validation:Optional
	DeploymentType *string `json:"deploymentType,omitempty" tf:"deployment_type,omitempty"`

	// The SSD IOPS configuration for the Amazon FSx for Windows File Server file system. See disk_iops_configuration Block for details.
	// +kubebuilder:validation:Optional
	DiskIopsConfiguration *WindowsFileSystemDiskIopsConfigurationParameters `json:"diskIopsConfiguration,omitempty" tf:"disk_iops_configuration,omitempty"`

	// A map of tags to apply to the file system's final backup.
	// +kubebuilder:validation:Optional
	// +mapType=granular
	FinalBackupTags map[string]*string `json:"finalBackupTags,omitempty" tf:"final_backup_tags,omitempty"`

	// ARN for the KMS Key to encrypt the file system at rest. Defaults to an AWS managed KMS Key.
	// +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/kms/v1beta1.Key
	// +crossplane:generate:reference:extractor=github.com/upbound/provider-aws/config/common.ARNExtractor()
	// +kubebuilder:validation:Optional
	KMSKeyID *string `json:"kmsKeyId,omitempty" tf:"kms_key_id,omitempty"`

	// Reference to a Key in kms to populate kmsKeyId.
	// +kubebuilder:validation:Optional
	KMSKeyIDRef *v1.Reference `json:"kmsKeyIdRef,omitempty" tf:"-"`

	// Selector for a Key in kms to populate kmsKeyId.
	// +kubebuilder:validation:Optional
	KMSKeyIDSelector *v1.Selector `json:"kmsKeyIdSelector,omitempty" tf:"-"`

	// Specifies the subnet in which you want the preferred file server to be located. Required for when deployment type is MULTI_AZ_1.
	// +kubebuilder:validation:Optional
	PreferredSubnetID *string `json:"preferredSubnetId,omitempty" tf:"preferred_subnet_id,omitempty"`

	// Region is the region you'd like your resource to be created in.
	// +upjet:crd:field:TFTag=-
	// +kubebuilder:validation:Required
	Region *string `json:"region" tf:"-"`

	// References to SecurityGroup in ec2 to populate securityGroupIds.
	// +kubebuilder:validation:Optional
	SecurityGroupIDRefs []v1.Reference `json:"securityGroupIdRefs,omitempty" tf:"-"`

	// Selector for a list of SecurityGroup in ec2 to populate securityGroupIds.
	// +kubebuilder:validation:Optional
	SecurityGroupIDSelector *v1.Selector `json:"securityGroupIdSelector,omitempty" tf:"-"`

	// A list of IDs for the security groups that apply to the specified network interfaces created for file system access. These security groups will apply to all network interfaces.
	// +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/ec2/v1beta1.SecurityGroup
	// +crossplane:generate:reference:refFieldName=SecurityGroupIDRefs
	// +crossplane:generate:reference:selectorFieldName=SecurityGroupIDSelector
	// +kubebuilder:validation:Optional
	// +listType=set
	SecurityGroupIds []*string `json:"securityGroupIds,omitempty" tf:"security_group_ids,omitempty"`

	// Configuration block that Amazon FSx uses to join the Windows File Server instance to your self-managed (including on-premises) Microsoft Active Directory (AD) directory. Cannot be specified with active_directory_id. See self_managed_active_directory Block for details.
	// +kubebuilder:validation:Optional
	SelfManagedActiveDirectory *SelfManagedActiveDirectoryParameters `json:"selfManagedActiveDirectory,omitempty" tf:"self_managed_active_directory,omitempty"`

	// When enabled, will skip the default final backup taken when the file system is deleted. This configuration must be applied separately before attempting to delete the resource to have the desired behavior. Defaults to false.
	// +kubebuilder:validation:Optional
	SkipFinalBackup *bool `json:"skipFinalBackup,omitempty" tf:"skip_final_backup,omitempty"`

	// Storage capacity (GiB) of the file system. Minimum of 32 and maximum of 65536. If the storage type is set to HDD the minimum value is 2000. Required when not creating filesystem for a backup.
	// +kubebuilder:validation:Optional
	StorageCapacity *float64 `json:"storageCapacity,omitempty" tf:"storage_capacity,omitempty"`

	// Specifies the storage type, Valid values are SSD and HDD. HDD is supported on SINGLE_AZ_2 and MULTI_AZ_1 Windows file system deployment types. Default value is SSD.
	// +kubebuilder:validation:Optional
	StorageType *string `json:"storageType,omitempty" tf:"storage_type,omitempty"`

	// References to Subnet in ec2 to populate subnetIds.
	// +kubebuilder:validation:Optional
	SubnetIDRefs []v1.Reference `json:"subnetIdRefs,omitempty" tf:"-"`

	// Selector for a list of Subnet in ec2 to populate subnetIds.
	// +kubebuilder:validation:Optional
	SubnetIDSelector *v1.Selector `json:"subnetIdSelector,omitempty" tf:"-"`

	// A list of IDs for the subnets that the file system will be accessible from. To specify more than a single subnet set deployment_type to MULTI_AZ_1.
	// +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/ec2/v1beta1.Subnet
	// +crossplane:generate:reference:refFieldName=SubnetIDRefs
	// +crossplane:generate:reference:selectorFieldName=SubnetIDSelector
	// +kubebuilder:validation:Optional
	SubnetIds []*string `json:"subnetIds,omitempty" tf:"subnet_ids,omitempty"`

	// Key-value map of resource tags.
	// +kubebuilder:validation:Optional
	// +mapType=granular
	Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"`

	// Throughput (megabytes per second) of the file system in power of 2 increments. Minimum of 8 and maximum of 2048.
	// +kubebuilder:validation:Optional
	ThroughputCapacity *float64 `json:"throughputCapacity,omitempty" tf:"throughput_capacity,omitempty"`

	// The preferred start time (in d:HH:MM format) to perform weekly maintenance, in the UTC time zone.
	// +kubebuilder:validation:Optional
	WeeklyMaintenanceStartTime *string `json:"weeklyMaintenanceStartTime,omitempty" tf:"weekly_maintenance_start_time,omitempty"`
}

func (*WindowsFileSystemParameters) DeepCopy

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

func (*WindowsFileSystemParameters) DeepCopyInto

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

type WindowsFileSystemSpec

type WindowsFileSystemSpec struct {
	v1.ResourceSpec `json:",inline"`
	ForProvider     WindowsFileSystemParameters `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 WindowsFileSystemInitParameters `json:"initProvider,omitempty"`
}

WindowsFileSystemSpec defines the desired state of WindowsFileSystem

func (*WindowsFileSystemSpec) DeepCopy

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

func (*WindowsFileSystemSpec) DeepCopyInto

func (in *WindowsFileSystemSpec) DeepCopyInto(out *WindowsFileSystemSpec)

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

type WindowsFileSystemStatus

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

WindowsFileSystemStatus defines the observed state of WindowsFileSystem.

func (*WindowsFileSystemStatus) DeepCopy

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

func (*WindowsFileSystemStatus) DeepCopyInto

func (in *WindowsFileSystemStatus) DeepCopyInto(out *WindowsFileSystemStatus)

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