v1beta2

package
v1.10.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=netapp.azure.upbound.io +versionName=v1beta2

Index

Constants

View Source
const (
	CRDGroup   = "netapp.azure.upbound.io"
	CRDVersion = "v1beta2"
)

Package type metadata.

Variables

View Source
var (
	Account_Kind             = "Account"
	Account_GroupKind        = schema.GroupKind{Group: CRDGroup, Kind: Account_Kind}.String()
	Account_KindAPIVersion   = Account_Kind + "." + CRDGroupVersion.String()
	Account_GroupVersionKind = CRDGroupVersion.WithKind(Account_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 (
	SnapshotPolicy_Kind             = "SnapshotPolicy"
	SnapshotPolicy_GroupKind        = schema.GroupKind{Group: CRDGroup, Kind: SnapshotPolicy_Kind}.String()
	SnapshotPolicy_KindAPIVersion   = SnapshotPolicy_Kind + "." + CRDGroupVersion.String()
	SnapshotPolicy_GroupVersionKind = CRDGroupVersion.WithKind(SnapshotPolicy_Kind)
)

Repository type metadata.

View Source
var (
	Volume_Kind             = "Volume"
	Volume_GroupKind        = schema.GroupKind{Group: CRDGroup, Kind: Volume_Kind}.String()
	Volume_KindAPIVersion   = Volume_Kind + "." + CRDGroupVersion.String()
	Volume_GroupVersionKind = CRDGroupVersion.WithKind(Volume_Kind)
)

Repository type metadata.

Functions

This section is empty.

Types

type Account

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

Account is the Schema for the Accounts API. Manages a NetApp Account. +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,azure}

func (*Account) DeepCopy

func (in *Account) DeepCopy() *Account

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

func (*Account) DeepCopyInto

func (in *Account) DeepCopyInto(out *Account)

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

func (*Account) DeepCopyObject

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

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

func (*Account) GetCondition

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

GetCondition of this Account.

func (*Account) GetConnectionDetailsMapping

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

GetConnectionDetailsMapping for this Account

func (*Account) GetDeletionPolicy

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

GetDeletionPolicy of this Account.

func (*Account) GetID

func (tr *Account) GetID() string

GetID returns ID of underlying Terraform resource of this Account

func (*Account) GetInitParameters

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

GetInitParameters of this Account

func (*Account) GetManagementPolicies

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

GetManagementPolicies of this Account.

func (*Account) GetMergedParameters

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

GetInitParameters of this Account

func (*Account) GetObservation

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

GetObservation of this Account

func (*Account) GetParameters

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

GetParameters of this Account

func (*Account) GetProviderConfigReference

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

GetProviderConfigReference of this Account.

func (*Account) GetPublishConnectionDetailsTo

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

GetPublishConnectionDetailsTo of this Account.

func (*Account) GetTerraformResourceType

func (mg *Account) GetTerraformResourceType() string

GetTerraformResourceType returns Terraform resource type for this Account

func (*Account) GetTerraformSchemaVersion

func (tr *Account) GetTerraformSchemaVersion() int

GetTerraformSchemaVersion returns the associated Terraform schema version

func (*Account) GetWriteConnectionSecretToReference

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

GetWriteConnectionSecretToReference of this Account.

func (*Account) Hub

func (tr *Account) Hub()

Hub marks this type as a conversion hub.

func (*Account) LateInitialize

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

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

func (*Account) ResolveReferences

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

func (*Account) SetConditions

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

SetConditions of this Account.

func (*Account) SetDeletionPolicy

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

SetDeletionPolicy of this Account.

func (*Account) SetManagementPolicies

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

SetManagementPolicies of this Account.

func (*Account) SetObservation

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

SetObservation for this Account

func (*Account) SetParameters

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

SetParameters for this Account

func (*Account) SetProviderConfigReference

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

SetProviderConfigReference of this Account.

func (*Account) SetPublishConnectionDetailsTo

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

SetPublishConnectionDetailsTo of this Account.

func (*Account) SetWriteConnectionSecretToReference

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

SetWriteConnectionSecretToReference of this Account.

type AccountInitParameters

type AccountInitParameters struct {

	// A active_directory block as defined below.
	ActiveDirectory *ActiveDirectoryInitParameters `json:"activeDirectory,omitempty" tf:"active_directory,omitempty"`

	// The identity block where it is used when customer managed keys based encryption will be enabled as defined below.
	Identity *IdentityInitParameters `json:"identity,omitempty" tf:"identity,omitempty"`

	// Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created.
	Location *string `json:"location,omitempty" tf:"location,omitempty"`

	// A mapping of tags to assign to the resource.
	// +mapType=granular
	Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"`
}

func (*AccountInitParameters) DeepCopy

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

func (*AccountInitParameters) DeepCopyInto

func (in *AccountInitParameters) DeepCopyInto(out *AccountInitParameters)

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

type AccountList

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

AccountList contains a list of Accounts

func (*AccountList) DeepCopy

func (in *AccountList) DeepCopy() *AccountList

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

func (*AccountList) DeepCopyInto

func (in *AccountList) DeepCopyInto(out *AccountList)

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

func (*AccountList) DeepCopyObject

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

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

func (*AccountList) GetItems

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

GetItems of this AccountList.

type AccountObservation

type AccountObservation struct {

	// A active_directory block as defined below.
	ActiveDirectory *ActiveDirectoryObservation `json:"activeDirectory,omitempty" tf:"active_directory,omitempty"`

	// The ID of the NetApp Account.
	ID *string `json:"id,omitempty" tf:"id,omitempty"`

	// The identity block where it is used when customer managed keys based encryption will be enabled as defined below.
	Identity *IdentityObservation `json:"identity,omitempty" tf:"identity,omitempty"`

	// Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created.
	Location *string `json:"location,omitempty" tf:"location,omitempty"`

	// The name of the resource group where the NetApp Account should be created. Changing this forces a new resource to be created.
	ResourceGroupName *string `json:"resourceGroupName,omitempty" tf:"resource_group_name,omitempty"`

	// A mapping of tags to assign to the resource.
	// +mapType=granular
	Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"`
}

func (*AccountObservation) DeepCopy

func (in *AccountObservation) DeepCopy() *AccountObservation

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

func (*AccountObservation) DeepCopyInto

func (in *AccountObservation) DeepCopyInto(out *AccountObservation)

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

type AccountParameters

type AccountParameters struct {

	// A active_directory block as defined below.
	// +kubebuilder:validation:Optional
	ActiveDirectory *ActiveDirectoryParameters `json:"activeDirectory,omitempty" tf:"active_directory,omitempty"`

	// The identity block where it is used when customer managed keys based encryption will be enabled as defined below.
	// +kubebuilder:validation:Optional
	Identity *IdentityParameters `json:"identity,omitempty" tf:"identity,omitempty"`

	// Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	Location *string `json:"location,omitempty" tf:"location,omitempty"`

	// The name of the resource group where the NetApp Account should be created. Changing this forces a new resource to be created.
	// +crossplane:generate:reference:type=github.com/upbound/provider-azure/apis/azure/v1beta1.ResourceGroup
	// +kubebuilder:validation:Optional
	ResourceGroupName *string `json:"resourceGroupName,omitempty" tf:"resource_group_name,omitempty"`

	// Reference to a ResourceGroup in azure to populate resourceGroupName.
	// +kubebuilder:validation:Optional
	ResourceGroupNameRef *v1.Reference `json:"resourceGroupNameRef,omitempty" tf:"-"`

	// Selector for a ResourceGroup in azure to populate resourceGroupName.
	// +kubebuilder:validation:Optional
	ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"`

	// A mapping of tags to assign to the resource.
	// +kubebuilder:validation:Optional
	// +mapType=granular
	Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"`
}

func (*AccountParameters) DeepCopy

func (in *AccountParameters) DeepCopy() *AccountParameters

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

func (*AccountParameters) DeepCopyInto

func (in *AccountParameters) DeepCopyInto(out *AccountParameters)

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

type AccountSpec

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

AccountSpec defines the desired state of Account

func (*AccountSpec) DeepCopy

func (in *AccountSpec) DeepCopy() *AccountSpec

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

func (*AccountSpec) DeepCopyInto

func (in *AccountSpec) DeepCopyInto(out *AccountSpec)

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

type AccountStatus

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

AccountStatus defines the observed state of Account.

func (*AccountStatus) DeepCopy

func (in *AccountStatus) DeepCopy() *AccountStatus

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

func (*AccountStatus) DeepCopyInto

func (in *AccountStatus) DeepCopyInto(out *AccountStatus)

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

type ActiveDirectoryInitParameters

type ActiveDirectoryInitParameters struct {

	// If enabled, AES encryption will be enabled for SMB communication. Defaults to false.
	// If enabled, AES encryption will be enabled for SMB communication.
	AesEncryptionEnabled *bool `json:"aesEncryptionEnabled,omitempty" tf:"aes_encryption_enabled,omitempty"`

	// A list of DNS server IP addresses for the Active Directory domain. Only allows IPv4 address.
	DNSServers []*string `json:"dnsServers,omitempty" tf:"dns_servers,omitempty"`

	// The name of the Active Directory domain.
	Domain *string `json:"domain,omitempty" tf:"domain,omitempty"`

	// Name of the active directory machine.
	// Name of the active directory machine. This optional parameter is used only while creating kerberos volume.
	KerberosAdName *string `json:"kerberosAdName,omitempty" tf:"kerberos_ad_name,omitempty"`

	// kdc server IP addresses for the active directory machine.
	// IP address of the KDC server (usually same the DC). This optional parameter is used only while creating kerberos volume.
	KerberosKdcIP *string `json:"kerberosKdcIp,omitempty" tf:"kerberos_kdc_ip,omitempty"`

	// Specifies whether or not the LDAP traffic needs to be secured via TLS. Defaults to false.
	// Specifies whether or not the LDAP traffic needs to be secured via TLS.
	LdapOverTLSEnabled *bool `json:"ldapOverTlsEnabled,omitempty" tf:"ldap_over_tls_enabled,omitempty"`

	// Specifies whether or not the LDAP traffic needs to be signed. Defaults to false.
	// Specifies whether or not the LDAP traffic needs to be signed.
	LdapSigningEnabled *bool `json:"ldapSigningEnabled,omitempty" tf:"ldap_signing_enabled,omitempty"`

	// If enabled, NFS client local users can also (in addition to LDAP users) access the NFS volumes. Defaults to false.
	// If enabled, NFS client local users can also (in addition to LDAP users) access the NFS volumes.
	LocalNFSUsersWithLdapAllowed *bool `json:"localNfsUsersWithLdapAllowed,omitempty" tf:"local_nfs_users_with_ldap_allowed,omitempty"`

	// The Organizational Unit (OU) within Active Directory where machines will be created. If blank, defaults to CN=Computers.
	// The Organizational Unit (OU) within the Windows Active Directory where machines will be created. If blank, defaults to 'CN=Computers'
	OrganizationalUnit *string `json:"organizationalUnit,omitempty" tf:"organizational_unit,omitempty"`

	// The password associated with the username.
	PasswordSecretRef v1.SecretKeySelector `json:"passwordSecretRef" tf:"-"`

	// The NetBIOS name which should be used for the NetApp SMB Server, which will be registered as a computer account in the AD and used to mount volumes.
	SMBServerName *string `json:"smbServerName,omitempty" tf:"smb_server_name,omitempty"`

	// When LDAP over SSL/TLS is enabled, the LDAP client is required to have a base64 encoded Active Directory Certificate Service's self-signed root CA certificate, this optional parameter is used only for dual protocol with LDAP user-mapping volumes. Required if ldap_over_tls_enabled is set to true.
	// When LDAP over SSL/TLS is enabled, the LDAP client is required to have base64 encoded Active Directory Certificate Service's self-signed root CA certificate, this optional parameter is used only for dual protocol with LDAP user-mapping volumes.
	ServerRootCACertificateSecretRef *v1.SecretKeySelector `json:"serverRootCaCertificateSecretRef,omitempty" tf:"-"`

	// The Active Directory site the service will limit Domain Controller discovery to. If blank, defaults to Default-First-Site-Name.
	// The Active Directory site the service will limit Domain Controller discovery to. If blank, defaults to 'Default-First-Site-Name'
	SiteName *string `json:"siteName,omitempty" tf:"site_name,omitempty"`

	// The Username of Active Directory Domain Administrator.
	Username *string `json:"username,omitempty" tf:"username,omitempty"`
}

func (*ActiveDirectoryInitParameters) DeepCopy

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

func (*ActiveDirectoryInitParameters) DeepCopyInto

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

type ActiveDirectoryObservation

type ActiveDirectoryObservation struct {

	// If enabled, AES encryption will be enabled for SMB communication. Defaults to false.
	// If enabled, AES encryption will be enabled for SMB communication.
	AesEncryptionEnabled *bool `json:"aesEncryptionEnabled,omitempty" tf:"aes_encryption_enabled,omitempty"`

	// A list of DNS server IP addresses for the Active Directory domain. Only allows IPv4 address.
	DNSServers []*string `json:"dnsServers,omitempty" tf:"dns_servers,omitempty"`

	// The name of the Active Directory domain.
	Domain *string `json:"domain,omitempty" tf:"domain,omitempty"`

	// Name of the active directory machine.
	// Name of the active directory machine. This optional parameter is used only while creating kerberos volume.
	KerberosAdName *string `json:"kerberosAdName,omitempty" tf:"kerberos_ad_name,omitempty"`

	// kdc server IP addresses for the active directory machine.
	// IP address of the KDC server (usually same the DC). This optional parameter is used only while creating kerberos volume.
	KerberosKdcIP *string `json:"kerberosKdcIp,omitempty" tf:"kerberos_kdc_ip,omitempty"`

	// Specifies whether or not the LDAP traffic needs to be secured via TLS. Defaults to false.
	// Specifies whether or not the LDAP traffic needs to be secured via TLS.
	LdapOverTLSEnabled *bool `json:"ldapOverTlsEnabled,omitempty" tf:"ldap_over_tls_enabled,omitempty"`

	// Specifies whether or not the LDAP traffic needs to be signed. Defaults to false.
	// Specifies whether or not the LDAP traffic needs to be signed.
	LdapSigningEnabled *bool `json:"ldapSigningEnabled,omitempty" tf:"ldap_signing_enabled,omitempty"`

	// If enabled, NFS client local users can also (in addition to LDAP users) access the NFS volumes. Defaults to false.
	// If enabled, NFS client local users can also (in addition to LDAP users) access the NFS volumes.
	LocalNFSUsersWithLdapAllowed *bool `json:"localNfsUsersWithLdapAllowed,omitempty" tf:"local_nfs_users_with_ldap_allowed,omitempty"`

	// The Organizational Unit (OU) within Active Directory where machines will be created. If blank, defaults to CN=Computers.
	// The Organizational Unit (OU) within the Windows Active Directory where machines will be created. If blank, defaults to 'CN=Computers'
	OrganizationalUnit *string `json:"organizationalUnit,omitempty" tf:"organizational_unit,omitempty"`

	// The NetBIOS name which should be used for the NetApp SMB Server, which will be registered as a computer account in the AD and used to mount volumes.
	SMBServerName *string `json:"smbServerName,omitempty" tf:"smb_server_name,omitempty"`

	// The Active Directory site the service will limit Domain Controller discovery to. If blank, defaults to Default-First-Site-Name.
	// The Active Directory site the service will limit Domain Controller discovery to. If blank, defaults to 'Default-First-Site-Name'
	SiteName *string `json:"siteName,omitempty" tf:"site_name,omitempty"`

	// The Username of Active Directory Domain Administrator.
	Username *string `json:"username,omitempty" tf:"username,omitempty"`
}

func (*ActiveDirectoryObservation) DeepCopy

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

func (*ActiveDirectoryObservation) DeepCopyInto

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

type ActiveDirectoryParameters

type ActiveDirectoryParameters struct {

	// If enabled, AES encryption will be enabled for SMB communication. Defaults to false.
	// If enabled, AES encryption will be enabled for SMB communication.
	// +kubebuilder:validation:Optional
	AesEncryptionEnabled *bool `json:"aesEncryptionEnabled,omitempty" tf:"aes_encryption_enabled,omitempty"`

	// A list of DNS server IP addresses for the Active Directory domain. Only allows IPv4 address.
	// +kubebuilder:validation:Optional
	DNSServers []*string `json:"dnsServers" tf:"dns_servers,omitempty"`

	// The name of the Active Directory domain.
	// +kubebuilder:validation:Optional
	Domain *string `json:"domain" tf:"domain,omitempty"`

	// Name of the active directory machine.
	// Name of the active directory machine. This optional parameter is used only while creating kerberos volume.
	// +kubebuilder:validation:Optional
	KerberosAdName *string `json:"kerberosAdName,omitempty" tf:"kerberos_ad_name,omitempty"`

	// kdc server IP addresses for the active directory machine.
	// IP address of the KDC server (usually same the DC). This optional parameter is used only while creating kerberos volume.
	// +kubebuilder:validation:Optional
	KerberosKdcIP *string `json:"kerberosKdcIp,omitempty" tf:"kerberos_kdc_ip,omitempty"`

	// Specifies whether or not the LDAP traffic needs to be secured via TLS. Defaults to false.
	// Specifies whether or not the LDAP traffic needs to be secured via TLS.
	// +kubebuilder:validation:Optional
	LdapOverTLSEnabled *bool `json:"ldapOverTlsEnabled,omitempty" tf:"ldap_over_tls_enabled,omitempty"`

	// Specifies whether or not the LDAP traffic needs to be signed. Defaults to false.
	// Specifies whether or not the LDAP traffic needs to be signed.
	// +kubebuilder:validation:Optional
	LdapSigningEnabled *bool `json:"ldapSigningEnabled,omitempty" tf:"ldap_signing_enabled,omitempty"`

	// If enabled, NFS client local users can also (in addition to LDAP users) access the NFS volumes. Defaults to false.
	// If enabled, NFS client local users can also (in addition to LDAP users) access the NFS volumes.
	// +kubebuilder:validation:Optional
	LocalNFSUsersWithLdapAllowed *bool `json:"localNfsUsersWithLdapAllowed,omitempty" tf:"local_nfs_users_with_ldap_allowed,omitempty"`

	// The Organizational Unit (OU) within Active Directory where machines will be created. If blank, defaults to CN=Computers.
	// The Organizational Unit (OU) within the Windows Active Directory where machines will be created. If blank, defaults to 'CN=Computers'
	// +kubebuilder:validation:Optional
	OrganizationalUnit *string `json:"organizationalUnit,omitempty" tf:"organizational_unit,omitempty"`

	// The password associated with the username.
	// +kubebuilder:validation:Optional
	PasswordSecretRef v1.SecretKeySelector `json:"passwordSecretRef" tf:"-"`

	// The NetBIOS name which should be used for the NetApp SMB Server, which will be registered as a computer account in the AD and used to mount volumes.
	// +kubebuilder:validation:Optional
	SMBServerName *string `json:"smbServerName" tf:"smb_server_name,omitempty"`

	// When LDAP over SSL/TLS is enabled, the LDAP client is required to have a base64 encoded Active Directory Certificate Service's self-signed root CA certificate, this optional parameter is used only for dual protocol with LDAP user-mapping volumes. Required if ldap_over_tls_enabled is set to true.
	// When LDAP over SSL/TLS is enabled, the LDAP client is required to have base64 encoded Active Directory Certificate Service's self-signed root CA certificate, this optional parameter is used only for dual protocol with LDAP user-mapping volumes.
	// +kubebuilder:validation:Optional
	ServerRootCACertificateSecretRef *v1.SecretKeySelector `json:"serverRootCaCertificateSecretRef,omitempty" tf:"-"`

	// The Active Directory site the service will limit Domain Controller discovery to. If blank, defaults to Default-First-Site-Name.
	// The Active Directory site the service will limit Domain Controller discovery to. If blank, defaults to 'Default-First-Site-Name'
	// +kubebuilder:validation:Optional
	SiteName *string `json:"siteName,omitempty" tf:"site_name,omitempty"`

	// The Username of Active Directory Domain Administrator.
	// +kubebuilder:validation:Optional
	Username *string `json:"username" tf:"username,omitempty"`
}

func (*ActiveDirectoryParameters) DeepCopy

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

func (*ActiveDirectoryParameters) DeepCopyInto

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

type DailyScheduleInitParameters

type DailyScheduleInitParameters struct {

	// Hour of the day that the snapshots will be created, valid range is from 0 to 23.
	Hour *float64 `json:"hour,omitempty" tf:"hour,omitempty"`

	// Minute of the hour that the snapshots will be created, valid range is from 0 to 59.
	Minute *float64 `json:"minute,omitempty" tf:"minute,omitempty"`

	// How many hourly snapshots to keep, valid range is from 0 to 255.
	SnapshotsToKeep *float64 `json:"snapshotsToKeep,omitempty" tf:"snapshots_to_keep,omitempty"`
}

func (*DailyScheduleInitParameters) DeepCopy

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

func (*DailyScheduleInitParameters) DeepCopyInto

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

type DailyScheduleObservation

type DailyScheduleObservation struct {

	// Hour of the day that the snapshots will be created, valid range is from 0 to 23.
	Hour *float64 `json:"hour,omitempty" tf:"hour,omitempty"`

	// Minute of the hour that the snapshots will be created, valid range is from 0 to 59.
	Minute *float64 `json:"minute,omitempty" tf:"minute,omitempty"`

	// How many hourly snapshots to keep, valid range is from 0 to 255.
	SnapshotsToKeep *float64 `json:"snapshotsToKeep,omitempty" tf:"snapshots_to_keep,omitempty"`
}

func (*DailyScheduleObservation) DeepCopy

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

func (*DailyScheduleObservation) DeepCopyInto

func (in *DailyScheduleObservation) DeepCopyInto(out *DailyScheduleObservation)

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

type DailyScheduleParameters

type DailyScheduleParameters struct {

	// Hour of the day that the snapshots will be created, valid range is from 0 to 23.
	// +kubebuilder:validation:Optional
	Hour *float64 `json:"hour" tf:"hour,omitempty"`

	// Minute of the hour that the snapshots will be created, valid range is from 0 to 59.
	// +kubebuilder:validation:Optional
	Minute *float64 `json:"minute" tf:"minute,omitempty"`

	// How many hourly snapshots to keep, valid range is from 0 to 255.
	// +kubebuilder:validation:Optional
	SnapshotsToKeep *float64 `json:"snapshotsToKeep" tf:"snapshots_to_keep,omitempty"`
}

func (*DailyScheduleParameters) DeepCopy

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

func (*DailyScheduleParameters) DeepCopyInto

func (in *DailyScheduleParameters) DeepCopyInto(out *DailyScheduleParameters)

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

type DataProtectionReplicationInitParameters

type DataProtectionReplicationInitParameters struct {

	// The endpoint type, default value is dst for destination.
	EndpointType *string `json:"endpointType,omitempty" tf:"endpoint_type,omitempty"`

	// Location of the primary volume. Changing this forces a new resource to be created.
	RemoteVolumeLocation *string `json:"remoteVolumeLocation,omitempty" tf:"remote_volume_location,omitempty"`

	// Resource ID of the primary volume.
	// +crossplane:generate:reference:type=github.com/upbound/provider-azure/apis/netapp/v1beta2.Volume
	// +crossplane:generate:reference:extractor=github.com/upbound/provider-azure/apis/rconfig.ExtractResourceID()
	RemoteVolumeResourceID *string `json:"remoteVolumeResourceId,omitempty" tf:"remote_volume_resource_id,omitempty"`

	// Reference to a Volume in netapp to populate remoteVolumeResourceId.
	// +kubebuilder:validation:Optional
	RemoteVolumeResourceIDRef *v1.Reference `json:"remoteVolumeResourceIdRef,omitempty" tf:"-"`

	// Selector for a Volume in netapp to populate remoteVolumeResourceId.
	// +kubebuilder:validation:Optional
	RemoteVolumeResourceIDSelector *v1.Selector `json:"remoteVolumeResourceIdSelector,omitempty" tf:"-"`

	// Replication frequency, supported values are '10minutes', 'hourly', 'daily', values are case sensitive.
	ReplicationFrequency *string `json:"replicationFrequency,omitempty" tf:"replication_frequency,omitempty"`
}

func (*DataProtectionReplicationInitParameters) DeepCopy

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

func (*DataProtectionReplicationInitParameters) DeepCopyInto

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

type DataProtectionReplicationObservation

type DataProtectionReplicationObservation struct {

	// The endpoint type, default value is dst for destination.
	EndpointType *string `json:"endpointType,omitempty" tf:"endpoint_type,omitempty"`

	// Location of the primary volume. Changing this forces a new resource to be created.
	RemoteVolumeLocation *string `json:"remoteVolumeLocation,omitempty" tf:"remote_volume_location,omitempty"`

	// Resource ID of the primary volume.
	RemoteVolumeResourceID *string `json:"remoteVolumeResourceId,omitempty" tf:"remote_volume_resource_id,omitempty"`

	// Replication frequency, supported values are '10minutes', 'hourly', 'daily', values are case sensitive.
	ReplicationFrequency *string `json:"replicationFrequency,omitempty" tf:"replication_frequency,omitempty"`
}

func (*DataProtectionReplicationObservation) DeepCopy

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

func (*DataProtectionReplicationObservation) DeepCopyInto

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

type DataProtectionReplicationParameters

type DataProtectionReplicationParameters struct {

	// The endpoint type, default value is dst for destination.
	// +kubebuilder:validation:Optional
	EndpointType *string `json:"endpointType,omitempty" tf:"endpoint_type,omitempty"`

	// Location of the primary volume. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	RemoteVolumeLocation *string `json:"remoteVolumeLocation" tf:"remote_volume_location,omitempty"`

	// Resource ID of the primary volume.
	// +crossplane:generate:reference:type=github.com/upbound/provider-azure/apis/netapp/v1beta2.Volume
	// +crossplane:generate:reference:extractor=github.com/upbound/provider-azure/apis/rconfig.ExtractResourceID()
	// +kubebuilder:validation:Optional
	RemoteVolumeResourceID *string `json:"remoteVolumeResourceId,omitempty" tf:"remote_volume_resource_id,omitempty"`

	// Reference to a Volume in netapp to populate remoteVolumeResourceId.
	// +kubebuilder:validation:Optional
	RemoteVolumeResourceIDRef *v1.Reference `json:"remoteVolumeResourceIdRef,omitempty" tf:"-"`

	// Selector for a Volume in netapp to populate remoteVolumeResourceId.
	// +kubebuilder:validation:Optional
	RemoteVolumeResourceIDSelector *v1.Selector `json:"remoteVolumeResourceIdSelector,omitempty" tf:"-"`

	// Replication frequency, supported values are '10minutes', 'hourly', 'daily', values are case sensitive.
	// +kubebuilder:validation:Optional
	ReplicationFrequency *string `json:"replicationFrequency" tf:"replication_frequency,omitempty"`
}

func (*DataProtectionReplicationParameters) DeepCopy

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

func (*DataProtectionReplicationParameters) DeepCopyInto

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

type DataProtectionSnapshotPolicyInitParameters

type DataProtectionSnapshotPolicyInitParameters struct {

	// Resource ID of the snapshot policy to apply to the volume.
	// +crossplane:generate:reference:type=github.com/upbound/provider-azure/apis/netapp/v1beta2.SnapshotPolicy
	// +crossplane:generate:reference:extractor=github.com/upbound/provider-azure/apis/rconfig.ExtractResourceID()
	SnapshotPolicyID *string `json:"snapshotPolicyId,omitempty" tf:"snapshot_policy_id,omitempty"`

	// Reference to a SnapshotPolicy in netapp to populate snapshotPolicyId.
	// +kubebuilder:validation:Optional
	SnapshotPolicyIDRef *v1.Reference `json:"snapshotPolicyIdRef,omitempty" tf:"-"`

	// Selector for a SnapshotPolicy in netapp to populate snapshotPolicyId.
	// +kubebuilder:validation:Optional
	SnapshotPolicyIDSelector *v1.Selector `json:"snapshotPolicyIdSelector,omitempty" tf:"-"`
}

func (*DataProtectionSnapshotPolicyInitParameters) DeepCopy

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

func (*DataProtectionSnapshotPolicyInitParameters) DeepCopyInto

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

type DataProtectionSnapshotPolicyObservation

type DataProtectionSnapshotPolicyObservation struct {

	// Resource ID of the snapshot policy to apply to the volume.
	SnapshotPolicyID *string `json:"snapshotPolicyId,omitempty" tf:"snapshot_policy_id,omitempty"`
}

func (*DataProtectionSnapshotPolicyObservation) DeepCopy

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

func (*DataProtectionSnapshotPolicyObservation) DeepCopyInto

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

type DataProtectionSnapshotPolicyParameters

type DataProtectionSnapshotPolicyParameters struct {

	// Resource ID of the snapshot policy to apply to the volume.
	// +crossplane:generate:reference:type=github.com/upbound/provider-azure/apis/netapp/v1beta2.SnapshotPolicy
	// +crossplane:generate:reference:extractor=github.com/upbound/provider-azure/apis/rconfig.ExtractResourceID()
	// +kubebuilder:validation:Optional
	SnapshotPolicyID *string `json:"snapshotPolicyId,omitempty" tf:"snapshot_policy_id,omitempty"`

	// Reference to a SnapshotPolicy in netapp to populate snapshotPolicyId.
	// +kubebuilder:validation:Optional
	SnapshotPolicyIDRef *v1.Reference `json:"snapshotPolicyIdRef,omitempty" tf:"-"`

	// Selector for a SnapshotPolicy in netapp to populate snapshotPolicyId.
	// +kubebuilder:validation:Optional
	SnapshotPolicyIDSelector *v1.Selector `json:"snapshotPolicyIdSelector,omitempty" tf:"-"`
}

func (*DataProtectionSnapshotPolicyParameters) DeepCopy

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

func (*DataProtectionSnapshotPolicyParameters) DeepCopyInto

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

type ExportPolicyRuleInitParameters

type ExportPolicyRuleInitParameters struct {

	// A list of allowed clients IPv4 addresses.
	// +listType=set
	AllowedClients []*string `json:"allowedClients,omitempty" tf:"allowed_clients,omitempty"`

	// Is Kerberos 5i read-only permitted to this volume?
	Kerberos5IReadOnlyEnabled *bool `json:"kerberos5IReadOnlyEnabled,omitempty" tf:"kerberos_5i_read_only_enabled,omitempty"`

	// Is Kerberos 5i read/write permitted to this volume?
	Kerberos5IReadWriteEnabled *bool `json:"kerberos5IReadWriteEnabled,omitempty" tf:"kerberos_5i_read_write_enabled,omitempty"`

	// Is Kerberos 5p read-only permitted to this volume?
	Kerberos5PReadOnlyEnabled *bool `json:"kerberos5PReadOnlyEnabled,omitempty" tf:"kerberos_5p_read_only_enabled,omitempty"`

	// Is Kerberos 5p read/write permitted to this volume?
	Kerberos5PReadWriteEnabled *bool `json:"kerberos5PReadWriteEnabled,omitempty" tf:"kerberos_5p_read_write_enabled,omitempty"`

	// Is Kerberos 5 read-only access permitted to this volume?
	Kerberos5ReadOnlyEnabled *bool `json:"kerberos5ReadOnlyEnabled,omitempty" tf:"kerberos_5_read_only_enabled,omitempty"`

	// Is Kerberos 5 read/write permitted to this volume?
	Kerberos5ReadWriteEnabled *bool `json:"kerberos5ReadWriteEnabled,omitempty" tf:"kerberos_5_read_write_enabled,omitempty"`

	// A list of allowed protocols. Valid values include CIFS, NFSv3, or NFSv4.1. Only one value is supported at this time. This replaces the previous arguments: cifs_enabled, nfsv3_enabled and nfsv4_enabled.
	ProtocolsEnabled []*string `json:"protocolsEnabled,omitempty" tf:"protocols_enabled,omitempty"`

	// Is root access permitted to this volume?
	RootAccessEnabled *bool `json:"rootAccessEnabled,omitempty" tf:"root_access_enabled,omitempty"`

	// The index number of the rule.
	RuleIndex *float64 `json:"ruleIndex,omitempty" tf:"rule_index,omitempty"`

	// Is the file system on unix read only?
	UnixReadOnly *bool `json:"unixReadOnly,omitempty" tf:"unix_read_only,omitempty"`

	// Is the file system on unix read and write?
	UnixReadWrite *bool `json:"unixReadWrite,omitempty" tf:"unix_read_write,omitempty"`
}

func (*ExportPolicyRuleInitParameters) DeepCopy

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

func (*ExportPolicyRuleInitParameters) DeepCopyInto

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

type ExportPolicyRuleObservation

type ExportPolicyRuleObservation struct {

	// A list of allowed clients IPv4 addresses.
	// +listType=set
	AllowedClients []*string `json:"allowedClients,omitempty" tf:"allowed_clients,omitempty"`

	// Is Kerberos 5i read-only permitted to this volume?
	Kerberos5IReadOnlyEnabled *bool `json:"kerberos5IReadOnlyEnabled,omitempty" tf:"kerberos_5i_read_only_enabled,omitempty"`

	// Is Kerberos 5i read/write permitted to this volume?
	Kerberos5IReadWriteEnabled *bool `json:"kerberos5IReadWriteEnabled,omitempty" tf:"kerberos_5i_read_write_enabled,omitempty"`

	// Is Kerberos 5p read-only permitted to this volume?
	Kerberos5PReadOnlyEnabled *bool `json:"kerberos5PReadOnlyEnabled,omitempty" tf:"kerberos_5p_read_only_enabled,omitempty"`

	// Is Kerberos 5p read/write permitted to this volume?
	Kerberos5PReadWriteEnabled *bool `json:"kerberos5PReadWriteEnabled,omitempty" tf:"kerberos_5p_read_write_enabled,omitempty"`

	// Is Kerberos 5 read-only access permitted to this volume?
	Kerberos5ReadOnlyEnabled *bool `json:"kerberos5ReadOnlyEnabled,omitempty" tf:"kerberos_5_read_only_enabled,omitempty"`

	// Is Kerberos 5 read/write permitted to this volume?
	Kerberos5ReadWriteEnabled *bool `json:"kerberos5ReadWriteEnabled,omitempty" tf:"kerberos_5_read_write_enabled,omitempty"`

	// A list of allowed protocols. Valid values include CIFS, NFSv3, or NFSv4.1. Only one value is supported at this time. This replaces the previous arguments: cifs_enabled, nfsv3_enabled and nfsv4_enabled.
	ProtocolsEnabled []*string `json:"protocolsEnabled,omitempty" tf:"protocols_enabled,omitempty"`

	// Is root access permitted to this volume?
	RootAccessEnabled *bool `json:"rootAccessEnabled,omitempty" tf:"root_access_enabled,omitempty"`

	// The index number of the rule.
	RuleIndex *float64 `json:"ruleIndex,omitempty" tf:"rule_index,omitempty"`

	// Is the file system on unix read only?
	UnixReadOnly *bool `json:"unixReadOnly,omitempty" tf:"unix_read_only,omitempty"`

	// Is the file system on unix read and write?
	UnixReadWrite *bool `json:"unixReadWrite,omitempty" tf:"unix_read_write,omitempty"`
}

func (*ExportPolicyRuleObservation) DeepCopy

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

func (*ExportPolicyRuleObservation) DeepCopyInto

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

type ExportPolicyRuleParameters

type ExportPolicyRuleParameters struct {

	// A list of allowed clients IPv4 addresses.
	// +kubebuilder:validation:Optional
	// +listType=set
	AllowedClients []*string `json:"allowedClients" tf:"allowed_clients,omitempty"`

	// Is Kerberos 5i read-only permitted to this volume?
	// +kubebuilder:validation:Optional
	Kerberos5IReadOnlyEnabled *bool `json:"kerberos5IReadOnlyEnabled,omitempty" tf:"kerberos_5i_read_only_enabled,omitempty"`

	// Is Kerberos 5i read/write permitted to this volume?
	// +kubebuilder:validation:Optional
	Kerberos5IReadWriteEnabled *bool `json:"kerberos5IReadWriteEnabled,omitempty" tf:"kerberos_5i_read_write_enabled,omitempty"`

	// Is Kerberos 5p read-only permitted to this volume?
	// +kubebuilder:validation:Optional
	Kerberos5PReadOnlyEnabled *bool `json:"kerberos5PReadOnlyEnabled,omitempty" tf:"kerberos_5p_read_only_enabled,omitempty"`

	// Is Kerberos 5p read/write permitted to this volume?
	// +kubebuilder:validation:Optional
	Kerberos5PReadWriteEnabled *bool `json:"kerberos5PReadWriteEnabled,omitempty" tf:"kerberos_5p_read_write_enabled,omitempty"`

	// Is Kerberos 5 read-only access permitted to this volume?
	// +kubebuilder:validation:Optional
	Kerberos5ReadOnlyEnabled *bool `json:"kerberos5ReadOnlyEnabled,omitempty" tf:"kerberos_5_read_only_enabled,omitempty"`

	// Is Kerberos 5 read/write permitted to this volume?
	// +kubebuilder:validation:Optional
	Kerberos5ReadWriteEnabled *bool `json:"kerberos5ReadWriteEnabled,omitempty" tf:"kerberos_5_read_write_enabled,omitempty"`

	// A list of allowed protocols. Valid values include CIFS, NFSv3, or NFSv4.1. Only one value is supported at this time. This replaces the previous arguments: cifs_enabled, nfsv3_enabled and nfsv4_enabled.
	// +kubebuilder:validation:Optional
	ProtocolsEnabled []*string `json:"protocolsEnabled,omitempty" tf:"protocols_enabled,omitempty"`

	// Is root access permitted to this volume?
	// +kubebuilder:validation:Optional
	RootAccessEnabled *bool `json:"rootAccessEnabled,omitempty" tf:"root_access_enabled,omitempty"`

	// The index number of the rule.
	// +kubebuilder:validation:Optional
	RuleIndex *float64 `json:"ruleIndex" tf:"rule_index,omitempty"`

	// Is the file system on unix read only?
	// +kubebuilder:validation:Optional
	UnixReadOnly *bool `json:"unixReadOnly,omitempty" tf:"unix_read_only,omitempty"`

	// Is the file system on unix read and write?
	// +kubebuilder:validation:Optional
	UnixReadWrite *bool `json:"unixReadWrite,omitempty" tf:"unix_read_write,omitempty"`
}

func (*ExportPolicyRuleParameters) DeepCopy

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

func (*ExportPolicyRuleParameters) DeepCopyInto

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

type HourlyScheduleInitParameters

type HourlyScheduleInitParameters struct {

	// Minute of the hour that the snapshots will be created, valid range is from 0 to 59.
	Minute *float64 `json:"minute,omitempty" tf:"minute,omitempty"`

	// How many hourly snapshots to keep, valid range is from 0 to 255.
	SnapshotsToKeep *float64 `json:"snapshotsToKeep,omitempty" tf:"snapshots_to_keep,omitempty"`
}

func (*HourlyScheduleInitParameters) DeepCopy

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

func (*HourlyScheduleInitParameters) DeepCopyInto

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

type HourlyScheduleObservation

type HourlyScheduleObservation struct {

	// Minute of the hour that the snapshots will be created, valid range is from 0 to 59.
	Minute *float64 `json:"minute,omitempty" tf:"minute,omitempty"`

	// How many hourly snapshots to keep, valid range is from 0 to 255.
	SnapshotsToKeep *float64 `json:"snapshotsToKeep,omitempty" tf:"snapshots_to_keep,omitempty"`
}

func (*HourlyScheduleObservation) DeepCopy

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

func (*HourlyScheduleObservation) DeepCopyInto

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

type HourlyScheduleParameters

type HourlyScheduleParameters struct {

	// Minute of the hour that the snapshots will be created, valid range is from 0 to 59.
	// +kubebuilder:validation:Optional
	Minute *float64 `json:"minute" tf:"minute,omitempty"`

	// How many hourly snapshots to keep, valid range is from 0 to 255.
	// +kubebuilder:validation:Optional
	SnapshotsToKeep *float64 `json:"snapshotsToKeep" tf:"snapshots_to_keep,omitempty"`
}

func (*HourlyScheduleParameters) DeepCopy

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

func (*HourlyScheduleParameters) DeepCopyInto

func (in *HourlyScheduleParameters) DeepCopyInto(out *HourlyScheduleParameters)

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

type IdentityInitParameters

type IdentityInitParameters struct {

	// The identity id of the user assigned identity to use when type is UserAssigned
	// +crossplane:generate:reference:type=github.com/upbound/provider-azure/apis/managedidentity/v1beta1.UserAssignedIdentity
	// +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractResourceID()
	// +listType=set
	IdentityIds []*string `json:"identityIds,omitempty" tf:"identity_ids,omitempty"`

	// References to UserAssignedIdentity in managedidentity to populate identityIds.
	// +kubebuilder:validation:Optional
	IdentityIdsRefs []v1.Reference `json:"identityIdsRefs,omitempty" tf:"-"`

	// Selector for a list of UserAssignedIdentity in managedidentity to populate identityIds.
	// +kubebuilder:validation:Optional
	IdentityIdsSelector *v1.Selector `json:"identityIdsSelector,omitempty" tf:"-"`

	// The identity type, which can be SystemAssigned or UserAssigned. Only one type at a time is supported by Azure NetApp Files.
	Type *string `json:"type,omitempty" tf:"type,omitempty"`
}

func (*IdentityInitParameters) DeepCopy

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

func (*IdentityInitParameters) DeepCopyInto

func (in *IdentityInitParameters) DeepCopyInto(out *IdentityInitParameters)

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

type IdentityObservation

type IdentityObservation struct {

	// The identity id of the user assigned identity to use when type is UserAssigned
	// +listType=set
	IdentityIds []*string `json:"identityIds,omitempty" tf:"identity_ids,omitempty"`

	// The ID of the NetApp Account.
	PrincipalID *string `json:"principalId,omitempty" tf:"principal_id,omitempty"`

	// The ID of the NetApp Account.
	TenantID *string `json:"tenantId,omitempty" tf:"tenant_id,omitempty"`

	// The identity type, which can be SystemAssigned or UserAssigned. Only one type at a time is supported by Azure NetApp Files.
	Type *string `json:"type,omitempty" tf:"type,omitempty"`
}

func (*IdentityObservation) DeepCopy

func (in *IdentityObservation) DeepCopy() *IdentityObservation

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

func (*IdentityObservation) DeepCopyInto

func (in *IdentityObservation) DeepCopyInto(out *IdentityObservation)

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

type IdentityParameters

type IdentityParameters struct {

	// The identity id of the user assigned identity to use when type is UserAssigned
	// +crossplane:generate:reference:type=github.com/upbound/provider-azure/apis/managedidentity/v1beta1.UserAssignedIdentity
	// +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractResourceID()
	// +kubebuilder:validation:Optional
	// +listType=set
	IdentityIds []*string `json:"identityIds,omitempty" tf:"identity_ids,omitempty"`

	// References to UserAssignedIdentity in managedidentity to populate identityIds.
	// +kubebuilder:validation:Optional
	IdentityIdsRefs []v1.Reference `json:"identityIdsRefs,omitempty" tf:"-"`

	// Selector for a list of UserAssignedIdentity in managedidentity to populate identityIds.
	// +kubebuilder:validation:Optional
	IdentityIdsSelector *v1.Selector `json:"identityIdsSelector,omitempty" tf:"-"`

	// The identity type, which can be SystemAssigned or UserAssigned. Only one type at a time is supported by Azure NetApp Files.
	// +kubebuilder:validation:Optional
	Type *string `json:"type" tf:"type,omitempty"`
}

func (*IdentityParameters) DeepCopy

func (in *IdentityParameters) DeepCopy() *IdentityParameters

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

func (*IdentityParameters) DeepCopyInto

func (in *IdentityParameters) DeepCopyInto(out *IdentityParameters)

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

type MonthlyScheduleInitParameters

type MonthlyScheduleInitParameters struct {

	// List of the days of the month when the snapshots will be created, valid range is from 1 to 30.
	// +listType=set
	DaysOfMonth []*float64 `json:"daysOfMonth,omitempty" tf:"days_of_month,omitempty"`

	// Hour of the day that the snapshots will be created, valid range is from 0 to 23.
	Hour *float64 `json:"hour,omitempty" tf:"hour,omitempty"`

	// Minute of the hour that the snapshots will be created, valid range is from 0 to 59.
	Minute *float64 `json:"minute,omitempty" tf:"minute,omitempty"`

	// How many hourly snapshots to keep, valid range is from 0 to 255.
	SnapshotsToKeep *float64 `json:"snapshotsToKeep,omitempty" tf:"snapshots_to_keep,omitempty"`
}

func (*MonthlyScheduleInitParameters) DeepCopy

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

func (*MonthlyScheduleInitParameters) DeepCopyInto

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

type MonthlyScheduleObservation

type MonthlyScheduleObservation struct {

	// List of the days of the month when the snapshots will be created, valid range is from 1 to 30.
	// +listType=set
	DaysOfMonth []*float64 `json:"daysOfMonth,omitempty" tf:"days_of_month,omitempty"`

	// Hour of the day that the snapshots will be created, valid range is from 0 to 23.
	Hour *float64 `json:"hour,omitempty" tf:"hour,omitempty"`

	// Minute of the hour that the snapshots will be created, valid range is from 0 to 59.
	Minute *float64 `json:"minute,omitempty" tf:"minute,omitempty"`

	// How many hourly snapshots to keep, valid range is from 0 to 255.
	SnapshotsToKeep *float64 `json:"snapshotsToKeep,omitempty" tf:"snapshots_to_keep,omitempty"`
}

func (*MonthlyScheduleObservation) DeepCopy

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

func (*MonthlyScheduleObservation) DeepCopyInto

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

type MonthlyScheduleParameters

type MonthlyScheduleParameters struct {

	// List of the days of the month when the snapshots will be created, valid range is from 1 to 30.
	// +kubebuilder:validation:Optional
	// +listType=set
	DaysOfMonth []*float64 `json:"daysOfMonth" tf:"days_of_month,omitempty"`

	// Hour of the day that the snapshots will be created, valid range is from 0 to 23.
	// +kubebuilder:validation:Optional
	Hour *float64 `json:"hour" tf:"hour,omitempty"`

	// Minute of the hour that the snapshots will be created, valid range is from 0 to 59.
	// +kubebuilder:validation:Optional
	Minute *float64 `json:"minute" tf:"minute,omitempty"`

	// How many hourly snapshots to keep, valid range is from 0 to 255.
	// +kubebuilder:validation:Optional
	SnapshotsToKeep *float64 `json:"snapshotsToKeep" tf:"snapshots_to_keep,omitempty"`
}

func (*MonthlyScheduleParameters) DeepCopy

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

func (*MonthlyScheduleParameters) DeepCopyInto

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

type SnapshotPolicy

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

SnapshotPolicy is the Schema for the SnapshotPolicys API. Manages a NetApp Snapshot Policy. +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,azure}

func (*SnapshotPolicy) DeepCopy

func (in *SnapshotPolicy) DeepCopy() *SnapshotPolicy

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

func (*SnapshotPolicy) DeepCopyInto

func (in *SnapshotPolicy) DeepCopyInto(out *SnapshotPolicy)

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

func (*SnapshotPolicy) DeepCopyObject

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

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

func (*SnapshotPolicy) GetCondition

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

GetCondition of this SnapshotPolicy.

func (*SnapshotPolicy) GetConnectionDetailsMapping

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

GetConnectionDetailsMapping for this SnapshotPolicy

func (*SnapshotPolicy) GetDeletionPolicy

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

GetDeletionPolicy of this SnapshotPolicy.

func (*SnapshotPolicy) GetID

func (tr *SnapshotPolicy) GetID() string

GetID returns ID of underlying Terraform resource of this SnapshotPolicy

func (*SnapshotPolicy) GetInitParameters

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

GetInitParameters of this SnapshotPolicy

func (*SnapshotPolicy) GetManagementPolicies

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

GetManagementPolicies of this SnapshotPolicy.

func (*SnapshotPolicy) GetMergedParameters

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

GetInitParameters of this SnapshotPolicy

func (*SnapshotPolicy) GetObservation

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

GetObservation of this SnapshotPolicy

func (*SnapshotPolicy) GetParameters

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

GetParameters of this SnapshotPolicy

func (*SnapshotPolicy) GetProviderConfigReference

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

GetProviderConfigReference of this SnapshotPolicy.

func (*SnapshotPolicy) GetPublishConnectionDetailsTo

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

GetPublishConnectionDetailsTo of this SnapshotPolicy.

func (*SnapshotPolicy) GetTerraformResourceType

func (mg *SnapshotPolicy) GetTerraformResourceType() string

GetTerraformResourceType returns Terraform resource type for this SnapshotPolicy

func (*SnapshotPolicy) GetTerraformSchemaVersion

func (tr *SnapshotPolicy) GetTerraformSchemaVersion() int

GetTerraformSchemaVersion returns the associated Terraform schema version

func (*SnapshotPolicy) GetWriteConnectionSecretToReference

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

GetWriteConnectionSecretToReference of this SnapshotPolicy.

func (*SnapshotPolicy) Hub

func (tr *SnapshotPolicy) Hub()

Hub marks this type as a conversion hub.

func (*SnapshotPolicy) LateInitialize

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

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

func (*SnapshotPolicy) ResolveReferences

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

ResolveReferences of this SnapshotPolicy.

func (*SnapshotPolicy) SetConditions

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

SetConditions of this SnapshotPolicy.

func (*SnapshotPolicy) SetDeletionPolicy

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

SetDeletionPolicy of this SnapshotPolicy.

func (*SnapshotPolicy) SetManagementPolicies

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

SetManagementPolicies of this SnapshotPolicy.

func (*SnapshotPolicy) SetObservation

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

SetObservation for this SnapshotPolicy

func (*SnapshotPolicy) SetParameters

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

SetParameters for this SnapshotPolicy

func (*SnapshotPolicy) SetProviderConfigReference

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

SetProviderConfigReference of this SnapshotPolicy.

func (*SnapshotPolicy) SetPublishConnectionDetailsTo

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

SetPublishConnectionDetailsTo of this SnapshotPolicy.

func (*SnapshotPolicy) SetWriteConnectionSecretToReference

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

SetWriteConnectionSecretToReference of this SnapshotPolicy.

type SnapshotPolicyInitParameters

type SnapshotPolicyInitParameters struct {

	// Sets a daily snapshot schedule. A daily_schedule block as defined below.
	DailySchedule *DailyScheduleInitParameters `json:"dailySchedule,omitempty" tf:"daily_schedule,omitempty"`

	// Defines that the NetApp Snapshot Policy is enabled or not.
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// Sets an hourly snapshot schedule. A hourly_schedule block as defined below.
	HourlySchedule *HourlyScheduleInitParameters `json:"hourlySchedule,omitempty" tf:"hourly_schedule,omitempty"`

	// Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created.
	Location *string `json:"location,omitempty" tf:"location,omitempty"`

	// Sets a monthly snapshot schedule. A monthly_schedule block as defined below.
	MonthlySchedule *MonthlyScheduleInitParameters `json:"monthlySchedule,omitempty" tf:"monthly_schedule,omitempty"`

	// A mapping of tags to assign to the resource.
	// +mapType=granular
	Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"`

	// Sets a weekly snapshot schedule. A weekly_schedule block as defined below.
	WeeklySchedule *WeeklyScheduleInitParameters `json:"weeklySchedule,omitempty" tf:"weekly_schedule,omitempty"`
}

func (*SnapshotPolicyInitParameters) DeepCopy

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

func (*SnapshotPolicyInitParameters) DeepCopyInto

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

type SnapshotPolicyList

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

SnapshotPolicyList contains a list of SnapshotPolicys

func (*SnapshotPolicyList) DeepCopy

func (in *SnapshotPolicyList) DeepCopy() *SnapshotPolicyList

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

func (*SnapshotPolicyList) DeepCopyInto

func (in *SnapshotPolicyList) DeepCopyInto(out *SnapshotPolicyList)

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

func (*SnapshotPolicyList) DeepCopyObject

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

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

func (*SnapshotPolicyList) GetItems

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

GetItems of this SnapshotPolicyList.

type SnapshotPolicyObservation

type SnapshotPolicyObservation struct {

	// The name of the NetApp Account in which the NetApp Snapshot Policy should be created. Changing this forces a new resource to be created.
	AccountName *string `json:"accountName,omitempty" tf:"account_name,omitempty"`

	// Sets a daily snapshot schedule. A daily_schedule block as defined below.
	DailySchedule *DailyScheduleObservation `json:"dailySchedule,omitempty" tf:"daily_schedule,omitempty"`

	// Defines that the NetApp Snapshot Policy is enabled or not.
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// Sets an hourly snapshot schedule. A hourly_schedule block as defined below.
	HourlySchedule *HourlyScheduleObservation `json:"hourlySchedule,omitempty" tf:"hourly_schedule,omitempty"`

	// The ID of the NetApp Snapshot.
	ID *string `json:"id,omitempty" tf:"id,omitempty"`

	// Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created.
	Location *string `json:"location,omitempty" tf:"location,omitempty"`

	// Sets a monthly snapshot schedule. A monthly_schedule block as defined below.
	MonthlySchedule *MonthlyScheduleObservation `json:"monthlySchedule,omitempty" tf:"monthly_schedule,omitempty"`

	// The name of the resource group where the NetApp Snapshot Policy should be created. Changing this forces a new resource to be created.
	ResourceGroupName *string `json:"resourceGroupName,omitempty" tf:"resource_group_name,omitempty"`

	// A mapping of tags to assign to the resource.
	// +mapType=granular
	Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"`

	// Sets a weekly snapshot schedule. A weekly_schedule block as defined below.
	WeeklySchedule *WeeklyScheduleObservation `json:"weeklySchedule,omitempty" tf:"weekly_schedule,omitempty"`
}

func (*SnapshotPolicyObservation) DeepCopy

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

func (*SnapshotPolicyObservation) DeepCopyInto

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

type SnapshotPolicyParameters

type SnapshotPolicyParameters struct {

	// The name of the NetApp Account in which the NetApp Snapshot Policy should be created. Changing this forces a new resource to be created.
	// +crossplane:generate:reference:type=github.com/upbound/provider-azure/apis/netapp/v1beta2.Account
	// +kubebuilder:validation:Optional
	AccountName *string `json:"accountName,omitempty" tf:"account_name,omitempty"`

	// Reference to a Account in netapp to populate accountName.
	// +kubebuilder:validation:Optional
	AccountNameRef *v1.Reference `json:"accountNameRef,omitempty" tf:"-"`

	// Selector for a Account in netapp to populate accountName.
	// +kubebuilder:validation:Optional
	AccountNameSelector *v1.Selector `json:"accountNameSelector,omitempty" tf:"-"`

	// Sets a daily snapshot schedule. A daily_schedule block as defined below.
	// +kubebuilder:validation:Optional
	DailySchedule *DailyScheduleParameters `json:"dailySchedule,omitempty" tf:"daily_schedule,omitempty"`

	// Defines that the NetApp Snapshot Policy is enabled or not.
	// +kubebuilder:validation:Optional
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// Sets an hourly snapshot schedule. A hourly_schedule block as defined below.
	// +kubebuilder:validation:Optional
	HourlySchedule *HourlyScheduleParameters `json:"hourlySchedule,omitempty" tf:"hourly_schedule,omitempty"`

	// Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	Location *string `json:"location,omitempty" tf:"location,omitempty"`

	// Sets a monthly snapshot schedule. A monthly_schedule block as defined below.
	// +kubebuilder:validation:Optional
	MonthlySchedule *MonthlyScheduleParameters `json:"monthlySchedule,omitempty" tf:"monthly_schedule,omitempty"`

	// The name of the resource group where the NetApp Snapshot Policy should be created. Changing this forces a new resource to be created.
	// +crossplane:generate:reference:type=github.com/upbound/provider-azure/apis/azure/v1beta1.ResourceGroup
	// +kubebuilder:validation:Optional
	ResourceGroupName *string `json:"resourceGroupName,omitempty" tf:"resource_group_name,omitempty"`

	// Reference to a ResourceGroup in azure to populate resourceGroupName.
	// +kubebuilder:validation:Optional
	ResourceGroupNameRef *v1.Reference `json:"resourceGroupNameRef,omitempty" tf:"-"`

	// Selector for a ResourceGroup in azure to populate resourceGroupName.
	// +kubebuilder:validation:Optional
	ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"`

	// A mapping of tags to assign to the resource.
	// +kubebuilder:validation:Optional
	// +mapType=granular
	Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"`

	// Sets a weekly snapshot schedule. A weekly_schedule block as defined below.
	// +kubebuilder:validation:Optional
	WeeklySchedule *WeeklyScheduleParameters `json:"weeklySchedule,omitempty" tf:"weekly_schedule,omitempty"`
}

func (*SnapshotPolicyParameters) DeepCopy

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

func (*SnapshotPolicyParameters) DeepCopyInto

func (in *SnapshotPolicyParameters) DeepCopyInto(out *SnapshotPolicyParameters)

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

type SnapshotPolicySpec

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

SnapshotPolicySpec defines the desired state of SnapshotPolicy

func (*SnapshotPolicySpec) DeepCopy

func (in *SnapshotPolicySpec) DeepCopy() *SnapshotPolicySpec

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

func (*SnapshotPolicySpec) DeepCopyInto

func (in *SnapshotPolicySpec) DeepCopyInto(out *SnapshotPolicySpec)

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

type SnapshotPolicyStatus

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

SnapshotPolicyStatus defines the observed state of SnapshotPolicy.

func (*SnapshotPolicyStatus) DeepCopy

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

func (*SnapshotPolicyStatus) DeepCopyInto

func (in *SnapshotPolicyStatus) DeepCopyInto(out *SnapshotPolicyStatus)

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

type Volume

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

Volume is the Schema for the Volumes API. Manages a NetApp Volume. +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,azure}

func (*Volume) DeepCopy

func (in *Volume) DeepCopy() *Volume

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

func (*Volume) DeepCopyInto

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

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

func (*Volume) DeepCopyObject

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

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

func (*Volume) GetCondition

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

GetCondition of this Volume.

func (*Volume) GetConnectionDetailsMapping

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

GetConnectionDetailsMapping for this Volume

func (*Volume) GetDeletionPolicy

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

GetDeletionPolicy of this Volume.

func (*Volume) GetID

func (tr *Volume) GetID() string

GetID returns ID of underlying Terraform resource of this Volume

func (*Volume) GetInitParameters

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

GetInitParameters of this Volume

func (*Volume) GetManagementPolicies

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

GetManagementPolicies of this Volume.

func (*Volume) GetMergedParameters

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

GetInitParameters of this Volume

func (*Volume) GetObservation

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

GetObservation of this Volume

func (*Volume) GetParameters

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

GetParameters of this Volume

func (*Volume) GetProviderConfigReference

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

GetProviderConfigReference of this Volume.

func (*Volume) GetPublishConnectionDetailsTo

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

GetPublishConnectionDetailsTo of this Volume.

func (*Volume) GetTerraformResourceType

func (mg *Volume) GetTerraformResourceType() string

GetTerraformResourceType returns Terraform resource type for this Volume

func (*Volume) GetTerraformSchemaVersion

func (tr *Volume) GetTerraformSchemaVersion() int

GetTerraformSchemaVersion returns the associated Terraform schema version

func (*Volume) GetWriteConnectionSecretToReference

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

GetWriteConnectionSecretToReference of this Volume.

func (*Volume) Hub

func (tr *Volume) Hub()

Hub marks this type as a conversion hub.

func (*Volume) LateInitialize

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

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

func (*Volume) ResolveReferences

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

ResolveReferences of this Volume.

func (*Volume) SetConditions

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

SetConditions of this Volume.

func (*Volume) SetDeletionPolicy

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

SetDeletionPolicy of this Volume.

func (*Volume) SetManagementPolicies

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

SetManagementPolicies of this Volume.

func (*Volume) SetObservation

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

SetObservation for this Volume

func (*Volume) SetParameters

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

SetParameters for this Volume

func (*Volume) SetProviderConfigReference

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

SetProviderConfigReference of this Volume.

func (*Volume) SetPublishConnectionDetailsTo

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

SetPublishConnectionDetailsTo of this Volume.

func (*Volume) SetWriteConnectionSecretToReference

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

SetWriteConnectionSecretToReference of this Volume.

type VolumeInitParameters

type VolumeInitParameters struct {

	// Is the NetApp Volume enabled for Azure VMware Solution (AVS) datastore purpose. Defaults to false. Changing this forces a new resource to be created.
	AzureVMwareDataStoreEnabled *bool `json:"azureVmwareDataStoreEnabled,omitempty" tf:"azure_vmware_data_store_enabled,omitempty"`

	// Creates volume from snapshot. Following properties must be the same as the original volume where the snapshot was taken from: protocols, subnet_id, location, service_level, resource_group_name, account_name and pool_name. Changing this forces a new resource to be created.
	// +crossplane:generate:reference:type=github.com/upbound/provider-azure/apis/netapp/v1beta1.Snapshot
	// +crossplane:generate:reference:extractor=github.com/upbound/provider-azure/apis/rconfig.ExtractResourceID()
	CreateFromSnapshotResourceID *string `json:"createFromSnapshotResourceId,omitempty" tf:"create_from_snapshot_resource_id,omitempty"`

	// Reference to a Snapshot in netapp to populate createFromSnapshotResourceId.
	// +kubebuilder:validation:Optional
	CreateFromSnapshotResourceIDRef *v1.Reference `json:"createFromSnapshotResourceIdRef,omitempty" tf:"-"`

	// Selector for a Snapshot in netapp to populate createFromSnapshotResourceId.
	// +kubebuilder:validation:Optional
	CreateFromSnapshotResourceIDSelector *v1.Selector `json:"createFromSnapshotResourceIdSelector,omitempty" tf:"-"`

	// A data_protection_replication block as defined below. Changing this forces a new resource to be created.
	DataProtectionReplication *DataProtectionReplicationInitParameters `json:"dataProtectionReplication,omitempty" tf:"data_protection_replication,omitempty"`

	// A data_protection_snapshot_policy block as defined below.
	DataProtectionSnapshotPolicy *DataProtectionSnapshotPolicyInitParameters `json:"dataProtectionSnapshotPolicy,omitempty" tf:"data_protection_snapshot_policy,omitempty"`

	// The encryption key source, it can be Microsoft.NetApp for platform managed keys or Microsoft.KeyVault for customer-managed keys. This is required with key_vault_private_endpoint_id. Changing this forces a new resource to be created.
	EncryptionKeySource *string `json:"encryptionKeySource,omitempty" tf:"encryption_key_source,omitempty"`

	// One or more export_policy_rule block defined below.
	ExportPolicyRule []ExportPolicyRuleInitParameters `json:"exportPolicyRule,omitempty" tf:"export_policy_rule,omitempty"`

	// Enable to allow Kerberos secured volumes. Requires appropriate export rules.
	// Enable to allow Kerberos secured volumes. Requires appropriate export rules as well as the parent `azurerm_netapp_account` having a defined AD connection.
	KerberosEnabled *bool `json:"kerberosEnabled,omitempty" tf:"kerberos_enabled,omitempty"`

	// The Private Endpoint ID for Key Vault, which is required when using customer-managed keys. This is required with encryption_key_source. Changing this forces a new resource to be created.
	KeyVaultPrivateEndpointID *string `json:"keyVaultPrivateEndpointId,omitempty" tf:"key_vault_private_endpoint_id,omitempty"`

	// Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created.
	Location *string `json:"location,omitempty" tf:"location,omitempty"`

	// Indicates which network feature to use, accepted values are Basic or Standard, it defaults to Basic if not defined. This is a feature in public preview and for more information about it and how to register, please refer to Configure network features for an Azure NetApp Files volume.
	NetworkFeatures *string `json:"networkFeatures,omitempty" tf:"network_features,omitempty"`

	// The target volume protocol expressed as a list. Supported single value include CIFS, NFSv3, or NFSv4.1. If argument is not defined it will default to NFSv3. Changing this forces a new resource to be created and data will be lost. Dual protocol scenario is supported for CIFS and NFSv3, for more information, please refer to Create a dual-protocol volume for Azure NetApp Files document.
	// +listType=set
	Protocols []*string `json:"protocols,omitempty" tf:"protocols,omitempty"`

	// Limits enumeration of files and folders (that is, listing the contents) in SMB only to users with allowed access on the share. For instance, if a user doesn't have access to read a file or folder in a share with access-based enumeration enabled, then the file or folder doesn't show up in directory listings. Defaults to false. For more information, please refer to Understand NAS share permissions in Azure NetApp Files
	// Enable access based enumeration setting for SMB/Dual Protocol volume. When enabled, users who do not have permission to access a shared folder or file underneath it, do not see that shared resource displayed in their environment.
	SMBAccessBasedEnumerationEnabled *bool `json:"smbAccessBasedEnumerationEnabled,omitempty" tf:"smb_access_based_enumeration_enabled,omitempty"`

	// Enable SMB Continuous Availability.
	// Continuous availability option should be used only for SQL and FSLogix workloads. Using it for any other SMB workloads is not supported.
	SMBContinuousAvailabilityEnabled *bool `json:"smbContinuousAvailabilityEnabled,omitempty" tf:"smb_continuous_availability_enabled,omitempty"`

	// Limits clients from browsing for an SMB share by hiding the share from view in Windows Explorer or when listing shares in "net view." Only end users that know the absolute paths to the share are able to find the share. Defaults to false. For more information, please refer to Understand NAS share permissions in Azure NetApp Files
	// Enable non browsable share setting for SMB/Dual Protocol volume. When enabled, it restricts windows clients to browse the share
	SMBNonBrowsableEnabled *bool `json:"smbNonBrowsableEnabled,omitempty" tf:"smb_non_browsable_enabled,omitempty"`

	// Volume security style, accepted values are unix or ntfs. If not provided, single-protocol volume is created defaulting to unix if it is NFSv3 or NFSv4.1 volume, if CIFS, it will default to ntfs. In a dual-protocol volume, if not provided, its value will be ntfs. Changing this forces a new resource to be created.
	SecurityStyle *string `json:"securityStyle,omitempty" tf:"security_style,omitempty"`

	// The target performance of the file system. Valid values include Premium, Standard, or Ultra. Changing this forces a new resource to be created.
	ServiceLevel *string `json:"serviceLevel,omitempty" tf:"service_level,omitempty"`

	// Specifies whether the .snapshot (NFS clients) or ~snapshot (SMB clients) path of a volume is visible, default value is true.
	SnapshotDirectoryVisible *bool `json:"snapshotDirectoryVisible,omitempty" tf:"snapshot_directory_visible,omitempty"`

	// The maximum Storage Quota allowed for a file system in Gigabytes.
	StorageQuotaInGb *float64 `json:"storageQuotaInGb,omitempty" tf:"storage_quota_in_gb,omitempty"`

	// The ID of the Subnet the NetApp Volume resides in, which must have the Microsoft.NetApp/volumes delegation. Changing this forces a new resource to be created.
	// +crossplane:generate:reference:type=github.com/upbound/provider-azure/apis/network/v1beta2.Subnet
	// +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractResourceID()
	SubnetID *string `json:"subnetId,omitempty" tf:"subnet_id,omitempty"`

	// Reference to a Subnet in network to populate subnetId.
	// +kubebuilder:validation:Optional
	SubnetIDRef *v1.Reference `json:"subnetIdRef,omitempty" tf:"-"`

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

	// A mapping of tags to assign to the resource.
	// +mapType=granular
	Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"`

	// Throughput of this volume in Mibps.
	ThroughputInMibps *float64 `json:"throughputInMibps,omitempty" tf:"throughput_in_mibps,omitempty"`

	// A unique file path for the volume. Used when creating mount targets. Changing this forces a new resource to be created.
	VolumePath *string `json:"volumePath,omitempty" tf:"volume_path,omitempty"`

	// Specifies the Availability Zone in which the Volume should be located. Possible values are 1, 2 and 3. Changing this forces a new resource to be created. This feature is currently in preview, for more information on how to enable it, please refer to Manage availability zone volume placement for Azure NetApp Files.
	Zone *string `json:"zone,omitempty" tf:"zone,omitempty"`
}

func (*VolumeInitParameters) DeepCopy

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

func (*VolumeInitParameters) DeepCopyInto

func (in *VolumeInitParameters) DeepCopyInto(out *VolumeInitParameters)

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

type VolumeList

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

VolumeList contains a list of Volumes

func (*VolumeList) DeepCopy

func (in *VolumeList) DeepCopy() *VolumeList

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

func (*VolumeList) DeepCopyInto

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

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

func (*VolumeList) DeepCopyObject

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

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

func (*VolumeList) GetItems

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

GetItems of this VolumeList.

type VolumeObservation

type VolumeObservation struct {

	// The name of the NetApp account in which the NetApp Pool should be created. Changing this forces a new resource to be created.
	AccountName *string `json:"accountName,omitempty" tf:"account_name,omitempty"`

	// Is the NetApp Volume enabled for Azure VMware Solution (AVS) datastore purpose. Defaults to false. Changing this forces a new resource to be created.
	AzureVMwareDataStoreEnabled *bool `json:"azureVmwareDataStoreEnabled,omitempty" tf:"azure_vmware_data_store_enabled,omitempty"`

	// Creates volume from snapshot. Following properties must be the same as the original volume where the snapshot was taken from: protocols, subnet_id, location, service_level, resource_group_name, account_name and pool_name. Changing this forces a new resource to be created.
	CreateFromSnapshotResourceID *string `json:"createFromSnapshotResourceId,omitempty" tf:"create_from_snapshot_resource_id,omitempty"`

	// A data_protection_replication block as defined below. Changing this forces a new resource to be created.
	DataProtectionReplication *DataProtectionReplicationObservation `json:"dataProtectionReplication,omitempty" tf:"data_protection_replication,omitempty"`

	// A data_protection_snapshot_policy block as defined below.
	DataProtectionSnapshotPolicy *DataProtectionSnapshotPolicyObservation `json:"dataProtectionSnapshotPolicy,omitempty" tf:"data_protection_snapshot_policy,omitempty"`

	// The encryption key source, it can be Microsoft.NetApp for platform managed keys or Microsoft.KeyVault for customer-managed keys. This is required with key_vault_private_endpoint_id. Changing this forces a new resource to be created.
	EncryptionKeySource *string `json:"encryptionKeySource,omitempty" tf:"encryption_key_source,omitempty"`

	// One or more export_policy_rule block defined below.
	ExportPolicyRule []ExportPolicyRuleObservation `json:"exportPolicyRule,omitempty" tf:"export_policy_rule,omitempty"`

	// The ID of the NetApp Volume.
	ID *string `json:"id,omitempty" tf:"id,omitempty"`

	// Enable to allow Kerberos secured volumes. Requires appropriate export rules.
	// Enable to allow Kerberos secured volumes. Requires appropriate export rules as well as the parent `azurerm_netapp_account` having a defined AD connection.
	KerberosEnabled *bool `json:"kerberosEnabled,omitempty" tf:"kerberos_enabled,omitempty"`

	// The Private Endpoint ID for Key Vault, which is required when using customer-managed keys. This is required with encryption_key_source. Changing this forces a new resource to be created.
	KeyVaultPrivateEndpointID *string `json:"keyVaultPrivateEndpointId,omitempty" tf:"key_vault_private_endpoint_id,omitempty"`

	// Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created.
	Location *string `json:"location,omitempty" tf:"location,omitempty"`

	// A list of IPv4 Addresses which should be used to mount the volume.
	MountIPAddresses []*string `json:"mountIpAddresses,omitempty" tf:"mount_ip_addresses,omitempty"`

	// Indicates which network feature to use, accepted values are Basic or Standard, it defaults to Basic if not defined. This is a feature in public preview and for more information about it and how to register, please refer to Configure network features for an Azure NetApp Files volume.
	NetworkFeatures *string `json:"networkFeatures,omitempty" tf:"network_features,omitempty"`

	// The name of the NetApp pool in which the NetApp Volume should be created. Changing this forces a new resource to be created.
	PoolName *string `json:"poolName,omitempty" tf:"pool_name,omitempty"`

	// The target volume protocol expressed as a list. Supported single value include CIFS, NFSv3, or NFSv4.1. If argument is not defined it will default to NFSv3. Changing this forces a new resource to be created and data will be lost. Dual protocol scenario is supported for CIFS and NFSv3, for more information, please refer to Create a dual-protocol volume for Azure NetApp Files document.
	// +listType=set
	Protocols []*string `json:"protocols,omitempty" tf:"protocols,omitempty"`

	// The name of the resource group where the NetApp Volume should be created. Changing this forces a new resource to be created.
	ResourceGroupName *string `json:"resourceGroupName,omitempty" tf:"resource_group_name,omitempty"`

	// Limits enumeration of files and folders (that is, listing the contents) in SMB only to users with allowed access on the share. For instance, if a user doesn't have access to read a file or folder in a share with access-based enumeration enabled, then the file or folder doesn't show up in directory listings. Defaults to false. For more information, please refer to Understand NAS share permissions in Azure NetApp Files
	// Enable access based enumeration setting for SMB/Dual Protocol volume. When enabled, users who do not have permission to access a shared folder or file underneath it, do not see that shared resource displayed in their environment.
	SMBAccessBasedEnumerationEnabled *bool `json:"smbAccessBasedEnumerationEnabled,omitempty" tf:"smb_access_based_enumeration_enabled,omitempty"`

	// Enable SMB Continuous Availability.
	// Continuous availability option should be used only for SQL and FSLogix workloads. Using it for any other SMB workloads is not supported.
	SMBContinuousAvailabilityEnabled *bool `json:"smbContinuousAvailabilityEnabled,omitempty" tf:"smb_continuous_availability_enabled,omitempty"`

	// Limits clients from browsing for an SMB share by hiding the share from view in Windows Explorer or when listing shares in "net view." Only end users that know the absolute paths to the share are able to find the share. Defaults to false. For more information, please refer to Understand NAS share permissions in Azure NetApp Files
	// Enable non browsable share setting for SMB/Dual Protocol volume. When enabled, it restricts windows clients to browse the share
	SMBNonBrowsableEnabled *bool `json:"smbNonBrowsableEnabled,omitempty" tf:"smb_non_browsable_enabled,omitempty"`

	// Volume security style, accepted values are unix or ntfs. If not provided, single-protocol volume is created defaulting to unix if it is NFSv3 or NFSv4.1 volume, if CIFS, it will default to ntfs. In a dual-protocol volume, if not provided, its value will be ntfs. Changing this forces a new resource to be created.
	SecurityStyle *string `json:"securityStyle,omitempty" tf:"security_style,omitempty"`

	// The target performance of the file system. Valid values include Premium, Standard, or Ultra. Changing this forces a new resource to be created.
	ServiceLevel *string `json:"serviceLevel,omitempty" tf:"service_level,omitempty"`

	// Specifies whether the .snapshot (NFS clients) or ~snapshot (SMB clients) path of a volume is visible, default value is true.
	SnapshotDirectoryVisible *bool `json:"snapshotDirectoryVisible,omitempty" tf:"snapshot_directory_visible,omitempty"`

	// The maximum Storage Quota allowed for a file system in Gigabytes.
	StorageQuotaInGb *float64 `json:"storageQuotaInGb,omitempty" tf:"storage_quota_in_gb,omitempty"`

	// The ID of the Subnet the NetApp Volume resides in, which must have the Microsoft.NetApp/volumes delegation. Changing this forces a new resource to be created.
	SubnetID *string `json:"subnetId,omitempty" tf:"subnet_id,omitempty"`

	// A mapping of tags to assign to the resource.
	// +mapType=granular
	Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"`

	// Throughput of this volume in Mibps.
	ThroughputInMibps *float64 `json:"throughputInMibps,omitempty" tf:"throughput_in_mibps,omitempty"`

	// A unique file path for the volume. Used when creating mount targets. Changing this forces a new resource to be created.
	VolumePath *string `json:"volumePath,omitempty" tf:"volume_path,omitempty"`

	// Specifies the Availability Zone in which the Volume should be located. Possible values are 1, 2 and 3. Changing this forces a new resource to be created. This feature is currently in preview, for more information on how to enable it, please refer to Manage availability zone volume placement for Azure NetApp Files.
	Zone *string `json:"zone,omitempty" tf:"zone,omitempty"`
}

func (*VolumeObservation) DeepCopy

func (in *VolumeObservation) DeepCopy() *VolumeObservation

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

func (*VolumeObservation) DeepCopyInto

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

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

type VolumeParameters

type VolumeParameters struct {

	// The name of the NetApp account in which the NetApp Pool should be created. Changing this forces a new resource to be created.
	// +crossplane:generate:reference:type=github.com/upbound/provider-azure/apis/netapp/v1beta2.Account
	// +kubebuilder:validation:Optional
	AccountName *string `json:"accountName,omitempty" tf:"account_name,omitempty"`

	// Reference to a Account in netapp to populate accountName.
	// +kubebuilder:validation:Optional
	AccountNameRef *v1.Reference `json:"accountNameRef,omitempty" tf:"-"`

	// Selector for a Account in netapp to populate accountName.
	// +kubebuilder:validation:Optional
	AccountNameSelector *v1.Selector `json:"accountNameSelector,omitempty" tf:"-"`

	// Is the NetApp Volume enabled for Azure VMware Solution (AVS) datastore purpose. Defaults to false. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	AzureVMwareDataStoreEnabled *bool `json:"azureVmwareDataStoreEnabled,omitempty" tf:"azure_vmware_data_store_enabled,omitempty"`

	// Creates volume from snapshot. Following properties must be the same as the original volume where the snapshot was taken from: protocols, subnet_id, location, service_level, resource_group_name, account_name and pool_name. Changing this forces a new resource to be created.
	// +crossplane:generate:reference:type=github.com/upbound/provider-azure/apis/netapp/v1beta1.Snapshot
	// +crossplane:generate:reference:extractor=github.com/upbound/provider-azure/apis/rconfig.ExtractResourceID()
	// +kubebuilder:validation:Optional
	CreateFromSnapshotResourceID *string `json:"createFromSnapshotResourceId,omitempty" tf:"create_from_snapshot_resource_id,omitempty"`

	// Reference to a Snapshot in netapp to populate createFromSnapshotResourceId.
	// +kubebuilder:validation:Optional
	CreateFromSnapshotResourceIDRef *v1.Reference `json:"createFromSnapshotResourceIdRef,omitempty" tf:"-"`

	// Selector for a Snapshot in netapp to populate createFromSnapshotResourceId.
	// +kubebuilder:validation:Optional
	CreateFromSnapshotResourceIDSelector *v1.Selector `json:"createFromSnapshotResourceIdSelector,omitempty" tf:"-"`

	// A data_protection_replication block as defined below. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	DataProtectionReplication *DataProtectionReplicationParameters `json:"dataProtectionReplication,omitempty" tf:"data_protection_replication,omitempty"`

	// A data_protection_snapshot_policy block as defined below.
	// +kubebuilder:validation:Optional
	DataProtectionSnapshotPolicy *DataProtectionSnapshotPolicyParameters `json:"dataProtectionSnapshotPolicy,omitempty" tf:"data_protection_snapshot_policy,omitempty"`

	// The encryption key source, it can be Microsoft.NetApp for platform managed keys or Microsoft.KeyVault for customer-managed keys. This is required with key_vault_private_endpoint_id. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	EncryptionKeySource *string `json:"encryptionKeySource,omitempty" tf:"encryption_key_source,omitempty"`

	// One or more export_policy_rule block defined below.
	// +kubebuilder:validation:Optional
	ExportPolicyRule []ExportPolicyRuleParameters `json:"exportPolicyRule,omitempty" tf:"export_policy_rule,omitempty"`

	// Enable to allow Kerberos secured volumes. Requires appropriate export rules.
	// Enable to allow Kerberos secured volumes. Requires appropriate export rules as well as the parent `azurerm_netapp_account` having a defined AD connection.
	// +kubebuilder:validation:Optional
	KerberosEnabled *bool `json:"kerberosEnabled,omitempty" tf:"kerberos_enabled,omitempty"`

	// The Private Endpoint ID for Key Vault, which is required when using customer-managed keys. This is required with encryption_key_source. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	KeyVaultPrivateEndpointID *string `json:"keyVaultPrivateEndpointId,omitempty" tf:"key_vault_private_endpoint_id,omitempty"`

	// Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	Location *string `json:"location,omitempty" tf:"location,omitempty"`

	// Indicates which network feature to use, accepted values are Basic or Standard, it defaults to Basic if not defined. This is a feature in public preview and for more information about it and how to register, please refer to Configure network features for an Azure NetApp Files volume.
	// +kubebuilder:validation:Optional
	NetworkFeatures *string `json:"networkFeatures,omitempty" tf:"network_features,omitempty"`

	// The name of the NetApp pool in which the NetApp Volume should be created. Changing this forces a new resource to be created.
	// +crossplane:generate:reference:type=github.com/upbound/provider-azure/apis/netapp/v1beta1.Pool
	// +kubebuilder:validation:Optional
	PoolName *string `json:"poolName,omitempty" tf:"pool_name,omitempty"`

	// Reference to a Pool in netapp to populate poolName.
	// +kubebuilder:validation:Optional
	PoolNameRef *v1.Reference `json:"poolNameRef,omitempty" tf:"-"`

	// Selector for a Pool in netapp to populate poolName.
	// +kubebuilder:validation:Optional
	PoolNameSelector *v1.Selector `json:"poolNameSelector,omitempty" tf:"-"`

	// The target volume protocol expressed as a list. Supported single value include CIFS, NFSv3, or NFSv4.1. If argument is not defined it will default to NFSv3. Changing this forces a new resource to be created and data will be lost. Dual protocol scenario is supported for CIFS and NFSv3, for more information, please refer to Create a dual-protocol volume for Azure NetApp Files document.
	// +kubebuilder:validation:Optional
	// +listType=set
	Protocols []*string `json:"protocols,omitempty" tf:"protocols,omitempty"`

	// The name of the resource group where the NetApp Volume should be created. Changing this forces a new resource to be created.
	// +crossplane:generate:reference:type=github.com/upbound/provider-azure/apis/azure/v1beta1.ResourceGroup
	// +kubebuilder:validation:Optional
	ResourceGroupName *string `json:"resourceGroupName,omitempty" tf:"resource_group_name,omitempty"`

	// Reference to a ResourceGroup in azure to populate resourceGroupName.
	// +kubebuilder:validation:Optional
	ResourceGroupNameRef *v1.Reference `json:"resourceGroupNameRef,omitempty" tf:"-"`

	// Selector for a ResourceGroup in azure to populate resourceGroupName.
	// +kubebuilder:validation:Optional
	ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"`

	// Limits enumeration of files and folders (that is, listing the contents) in SMB only to users with allowed access on the share. For instance, if a user doesn't have access to read a file or folder in a share with access-based enumeration enabled, then the file or folder doesn't show up in directory listings. Defaults to false. For more information, please refer to Understand NAS share permissions in Azure NetApp Files
	// Enable access based enumeration setting for SMB/Dual Protocol volume. When enabled, users who do not have permission to access a shared folder or file underneath it, do not see that shared resource displayed in their environment.
	// +kubebuilder:validation:Optional
	SMBAccessBasedEnumerationEnabled *bool `json:"smbAccessBasedEnumerationEnabled,omitempty" tf:"smb_access_based_enumeration_enabled,omitempty"`

	// Enable SMB Continuous Availability.
	// Continuous availability option should be used only for SQL and FSLogix workloads. Using it for any other SMB workloads is not supported.
	// +kubebuilder:validation:Optional
	SMBContinuousAvailabilityEnabled *bool `json:"smbContinuousAvailabilityEnabled,omitempty" tf:"smb_continuous_availability_enabled,omitempty"`

	// Limits clients from browsing for an SMB share by hiding the share from view in Windows Explorer or when listing shares in "net view." Only end users that know the absolute paths to the share are able to find the share. Defaults to false. For more information, please refer to Understand NAS share permissions in Azure NetApp Files
	// Enable non browsable share setting for SMB/Dual Protocol volume. When enabled, it restricts windows clients to browse the share
	// +kubebuilder:validation:Optional
	SMBNonBrowsableEnabled *bool `json:"smbNonBrowsableEnabled,omitempty" tf:"smb_non_browsable_enabled,omitempty"`

	// Volume security style, accepted values are unix or ntfs. If not provided, single-protocol volume is created defaulting to unix if it is NFSv3 or NFSv4.1 volume, if CIFS, it will default to ntfs. In a dual-protocol volume, if not provided, its value will be ntfs. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	SecurityStyle *string `json:"securityStyle,omitempty" tf:"security_style,omitempty"`

	// The target performance of the file system. Valid values include Premium, Standard, or Ultra. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	ServiceLevel *string `json:"serviceLevel,omitempty" tf:"service_level,omitempty"`

	// Specifies whether the .snapshot (NFS clients) or ~snapshot (SMB clients) path of a volume is visible, default value is true.
	// +kubebuilder:validation:Optional
	SnapshotDirectoryVisible *bool `json:"snapshotDirectoryVisible,omitempty" tf:"snapshot_directory_visible,omitempty"`

	// The maximum Storage Quota allowed for a file system in Gigabytes.
	// +kubebuilder:validation:Optional
	StorageQuotaInGb *float64 `json:"storageQuotaInGb,omitempty" tf:"storage_quota_in_gb,omitempty"`

	// The ID of the Subnet the NetApp Volume resides in, which must have the Microsoft.NetApp/volumes delegation. Changing this forces a new resource to be created.
	// +crossplane:generate:reference:type=github.com/upbound/provider-azure/apis/network/v1beta2.Subnet
	// +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractResourceID()
	// +kubebuilder:validation:Optional
	SubnetID *string `json:"subnetId,omitempty" tf:"subnet_id,omitempty"`

	// Reference to a Subnet in network to populate subnetId.
	// +kubebuilder:validation:Optional
	SubnetIDRef *v1.Reference `json:"subnetIdRef,omitempty" tf:"-"`

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

	// A mapping of tags to assign to the resource.
	// +kubebuilder:validation:Optional
	// +mapType=granular
	Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"`

	// Throughput of this volume in Mibps.
	// +kubebuilder:validation:Optional
	ThroughputInMibps *float64 `json:"throughputInMibps,omitempty" tf:"throughput_in_mibps,omitempty"`

	// A unique file path for the volume. Used when creating mount targets. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	VolumePath *string `json:"volumePath,omitempty" tf:"volume_path,omitempty"`

	// Specifies the Availability Zone in which the Volume should be located. Possible values are 1, 2 and 3. Changing this forces a new resource to be created. This feature is currently in preview, for more information on how to enable it, please refer to Manage availability zone volume placement for Azure NetApp Files.
	// +kubebuilder:validation:Optional
	Zone *string `json:"zone,omitempty" tf:"zone,omitempty"`
}

func (*VolumeParameters) DeepCopy

func (in *VolumeParameters) DeepCopy() *VolumeParameters

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

func (*VolumeParameters) DeepCopyInto

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

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

type VolumeSpec

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

VolumeSpec defines the desired state of Volume

func (*VolumeSpec) DeepCopy

func (in *VolumeSpec) DeepCopy() *VolumeSpec

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

func (*VolumeSpec) DeepCopyInto

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

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

type VolumeStatus

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

VolumeStatus defines the observed state of Volume.

func (*VolumeStatus) DeepCopy

func (in *VolumeStatus) DeepCopy() *VolumeStatus

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

func (*VolumeStatus) DeepCopyInto

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

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

type WeeklyScheduleInitParameters

type WeeklyScheduleInitParameters struct {

	// List of the week days using English names when the snapshots will be created.
	// +listType=set
	DaysOfWeek []*string `json:"daysOfWeek,omitempty" tf:"days_of_week,omitempty"`

	// Hour of the day that the snapshots will be created, valid range is from 0 to 23.
	Hour *float64 `json:"hour,omitempty" tf:"hour,omitempty"`

	// Minute of the hour that the snapshots will be created, valid range is from 0 to 59.
	Minute *float64 `json:"minute,omitempty" tf:"minute,omitempty"`

	// How many hourly snapshots to keep, valid range is from 0 to 255.
	SnapshotsToKeep *float64 `json:"snapshotsToKeep,omitempty" tf:"snapshots_to_keep,omitempty"`
}

func (*WeeklyScheduleInitParameters) DeepCopy

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

func (*WeeklyScheduleInitParameters) DeepCopyInto

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

type WeeklyScheduleObservation

type WeeklyScheduleObservation struct {

	// List of the week days using English names when the snapshots will be created.
	// +listType=set
	DaysOfWeek []*string `json:"daysOfWeek,omitempty" tf:"days_of_week,omitempty"`

	// Hour of the day that the snapshots will be created, valid range is from 0 to 23.
	Hour *float64 `json:"hour,omitempty" tf:"hour,omitempty"`

	// Minute of the hour that the snapshots will be created, valid range is from 0 to 59.
	Minute *float64 `json:"minute,omitempty" tf:"minute,omitempty"`

	// How many hourly snapshots to keep, valid range is from 0 to 255.
	SnapshotsToKeep *float64 `json:"snapshotsToKeep,omitempty" tf:"snapshots_to_keep,omitempty"`
}

func (*WeeklyScheduleObservation) DeepCopy

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

func (*WeeklyScheduleObservation) DeepCopyInto

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

type WeeklyScheduleParameters

type WeeklyScheduleParameters struct {

	// List of the week days using English names when the snapshots will be created.
	// +kubebuilder:validation:Optional
	// +listType=set
	DaysOfWeek []*string `json:"daysOfWeek" tf:"days_of_week,omitempty"`

	// Hour of the day that the snapshots will be created, valid range is from 0 to 23.
	// +kubebuilder:validation:Optional
	Hour *float64 `json:"hour" tf:"hour,omitempty"`

	// Minute of the hour that the snapshots will be created, valid range is from 0 to 59.
	// +kubebuilder:validation:Optional
	Minute *float64 `json:"minute" tf:"minute,omitempty"`

	// How many hourly snapshots to keep, valid range is from 0 to 255.
	// +kubebuilder:validation:Optional
	SnapshotsToKeep *float64 `json:"snapshotsToKeep" tf:"snapshots_to_keep,omitempty"`
}

func (*WeeklyScheduleParameters) DeepCopy

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

func (*WeeklyScheduleParameters) DeepCopyInto

func (in *WeeklyScheduleParameters) DeepCopyInto(out *WeeklyScheduleParameters)

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