v1beta2

package
v1.3.0-rc.0 Latest Latest
Warning

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

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

Documentation

Overview

+kubebuilder:object:generate=true +groupName=dbforpostgresql.azure.upbound.io +versionName=v1beta2

Index

Constants

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

Package type metadata.

Variables

View Source
var (
	FlexibleServer_Kind             = "FlexibleServer"
	FlexibleServer_GroupKind        = schema.GroupKind{Group: CRDGroup, Kind: FlexibleServer_Kind}.String()
	FlexibleServer_KindAPIVersion   = FlexibleServer_Kind + "." + CRDGroupVersion.String()
	FlexibleServer_GroupVersionKind = CRDGroupVersion.WithKind(FlexibleServer_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 (
	Server_Kind             = "Server"
	Server_GroupKind        = schema.GroupKind{Group: CRDGroup, Kind: Server_Kind}.String()
	Server_KindAPIVersion   = Server_Kind + "." + CRDGroupVersion.String()
	Server_GroupVersionKind = CRDGroupVersion.WithKind(Server_Kind)
)

Repository type metadata.

Functions

This section is empty.

Types

type AuthenticationInitParameters

type AuthenticationInitParameters struct {

	// Whether or not Active Directory authentication is allowed to access the PostgreSQL Flexible Server. Defaults to false.
	ActiveDirectoryAuthEnabled *bool `json:"activeDirectoryAuthEnabled,omitempty" tf:"active_directory_auth_enabled,omitempty"`

	// Whether or not password authentication is allowed to access the PostgreSQL Flexible Server. Defaults to true.
	PasswordAuthEnabled *bool `json:"passwordAuthEnabled,omitempty" tf:"password_auth_enabled,omitempty"`

	// The Tenant ID of the Azure Active Directory which is used by the Active Directory authentication. active_directory_auth_enabled must be set to true.
	TenantID *string `json:"tenantId,omitempty" tf:"tenant_id,omitempty"`
}

func (*AuthenticationInitParameters) DeepCopy

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

func (*AuthenticationInitParameters) DeepCopyInto

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

type AuthenticationObservation

type AuthenticationObservation struct {

	// Whether or not Active Directory authentication is allowed to access the PostgreSQL Flexible Server. Defaults to false.
	ActiveDirectoryAuthEnabled *bool `json:"activeDirectoryAuthEnabled,omitempty" tf:"active_directory_auth_enabled,omitempty"`

	// Whether or not password authentication is allowed to access the PostgreSQL Flexible Server. Defaults to true.
	PasswordAuthEnabled *bool `json:"passwordAuthEnabled,omitempty" tf:"password_auth_enabled,omitempty"`

	// The Tenant ID of the Azure Active Directory which is used by the Active Directory authentication. active_directory_auth_enabled must be set to true.
	TenantID *string `json:"tenantId,omitempty" tf:"tenant_id,omitempty"`
}

func (*AuthenticationObservation) DeepCopy

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

func (*AuthenticationObservation) DeepCopyInto

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

type AuthenticationParameters

type AuthenticationParameters struct {

	// Whether or not Active Directory authentication is allowed to access the PostgreSQL Flexible Server. Defaults to false.
	// +kubebuilder:validation:Optional
	ActiveDirectoryAuthEnabled *bool `json:"activeDirectoryAuthEnabled,omitempty" tf:"active_directory_auth_enabled,omitempty"`

	// Whether or not password authentication is allowed to access the PostgreSQL Flexible Server. Defaults to true.
	// +kubebuilder:validation:Optional
	PasswordAuthEnabled *bool `json:"passwordAuthEnabled,omitempty" tf:"password_auth_enabled,omitempty"`

	// The Tenant ID of the Azure Active Directory which is used by the Active Directory authentication. active_directory_auth_enabled must be set to true.
	// +kubebuilder:validation:Optional
	TenantID *string `json:"tenantId,omitempty" tf:"tenant_id,omitempty"`
}

func (*AuthenticationParameters) DeepCopy

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

func (*AuthenticationParameters) DeepCopyInto

func (in *AuthenticationParameters) DeepCopyInto(out *AuthenticationParameters)

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

type CustomerManagedKeyInitParameters

type CustomerManagedKeyInitParameters struct {

	// The ID of the geo backup Key Vault Key. It can't cross region and need Customer Managed Key in same region as geo backup.
	GeoBackupKeyVaultKeyID *string `json:"geoBackupKeyVaultKeyId,omitempty" tf:"geo_backup_key_vault_key_id,omitempty"`

	// The geo backup user managed identity id for a Customer Managed Key. Should be added with identity_ids. It can't cross region and need identity in same region as geo backup.
	GeoBackupUserAssignedIdentityID *string `json:"geoBackupUserAssignedIdentityId,omitempty" tf:"geo_backup_user_assigned_identity_id,omitempty"`

	// The ID of the Key Vault Key.
	KeyVaultKeyID *string `json:"keyVaultKeyId,omitempty" tf:"key_vault_key_id,omitempty"`

	// Specifies the primary user managed identity id for a Customer Managed Key. Should be added with identity_ids.
	PrimaryUserAssignedIdentityID *string `json:"primaryUserAssignedIdentityId,omitempty" tf:"primary_user_assigned_identity_id,omitempty"`
}

func (*CustomerManagedKeyInitParameters) DeepCopy

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

func (*CustomerManagedKeyInitParameters) DeepCopyInto

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

type CustomerManagedKeyObservation

type CustomerManagedKeyObservation struct {

	// The ID of the geo backup Key Vault Key. It can't cross region and need Customer Managed Key in same region as geo backup.
	GeoBackupKeyVaultKeyID *string `json:"geoBackupKeyVaultKeyId,omitempty" tf:"geo_backup_key_vault_key_id,omitempty"`

	// The geo backup user managed identity id for a Customer Managed Key. Should be added with identity_ids. It can't cross region and need identity in same region as geo backup.
	GeoBackupUserAssignedIdentityID *string `json:"geoBackupUserAssignedIdentityId,omitempty" tf:"geo_backup_user_assigned_identity_id,omitempty"`

	// The ID of the Key Vault Key.
	KeyVaultKeyID *string `json:"keyVaultKeyId,omitempty" tf:"key_vault_key_id,omitempty"`

	// Specifies the primary user managed identity id for a Customer Managed Key. Should be added with identity_ids.
	PrimaryUserAssignedIdentityID *string `json:"primaryUserAssignedIdentityId,omitempty" tf:"primary_user_assigned_identity_id,omitempty"`
}

func (*CustomerManagedKeyObservation) DeepCopy

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

func (*CustomerManagedKeyObservation) DeepCopyInto

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

type CustomerManagedKeyParameters

type CustomerManagedKeyParameters struct {

	// The ID of the geo backup Key Vault Key. It can't cross region and need Customer Managed Key in same region as geo backup.
	// +kubebuilder:validation:Optional
	GeoBackupKeyVaultKeyID *string `json:"geoBackupKeyVaultKeyId,omitempty" tf:"geo_backup_key_vault_key_id,omitempty"`

	// The geo backup user managed identity id for a Customer Managed Key. Should be added with identity_ids. It can't cross region and need identity in same region as geo backup.
	// +kubebuilder:validation:Optional
	GeoBackupUserAssignedIdentityID *string `json:"geoBackupUserAssignedIdentityId,omitempty" tf:"geo_backup_user_assigned_identity_id,omitempty"`

	// The ID of the Key Vault Key.
	// +kubebuilder:validation:Optional
	KeyVaultKeyID *string `json:"keyVaultKeyId" tf:"key_vault_key_id,omitempty"`

	// Specifies the primary user managed identity id for a Customer Managed Key. Should be added with identity_ids.
	// +kubebuilder:validation:Optional
	PrimaryUserAssignedIdentityID *string `json:"primaryUserAssignedIdentityId,omitempty" tf:"primary_user_assigned_identity_id,omitempty"`
}

func (*CustomerManagedKeyParameters) DeepCopy

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

func (*CustomerManagedKeyParameters) DeepCopyInto

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

type FlexibleServer

type FlexibleServer 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   FlexibleServerSpec   `json:"spec"`
	Status FlexibleServerStatus `json:"status,omitempty"`
}

FlexibleServer is the Schema for the FlexibleServers API. Manages a PostgreSQL Flexible Server. +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 (*FlexibleServer) DeepCopy

func (in *FlexibleServer) DeepCopy() *FlexibleServer

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

func (*FlexibleServer) DeepCopyInto

func (in *FlexibleServer) DeepCopyInto(out *FlexibleServer)

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

func (*FlexibleServer) DeepCopyObject

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

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

func (*FlexibleServer) GetCondition

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

GetCondition of this FlexibleServer.

func (*FlexibleServer) GetConnectionDetailsMapping

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

GetConnectionDetailsMapping for this FlexibleServer

func (*FlexibleServer) GetDeletionPolicy

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

GetDeletionPolicy of this FlexibleServer.

func (*FlexibleServer) GetID

func (tr *FlexibleServer) GetID() string

GetID returns ID of underlying Terraform resource of this FlexibleServer

func (*FlexibleServer) GetInitParameters

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

GetInitParameters of this FlexibleServer

func (*FlexibleServer) GetManagementPolicies

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

GetManagementPolicies of this FlexibleServer.

func (*FlexibleServer) GetMergedParameters

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

GetInitParameters of this FlexibleServer

func (*FlexibleServer) GetObservation

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

GetObservation of this FlexibleServer

func (*FlexibleServer) GetParameters

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

GetParameters of this FlexibleServer

func (*FlexibleServer) GetProviderConfigReference

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

GetProviderConfigReference of this FlexibleServer.

func (*FlexibleServer) GetPublishConnectionDetailsTo

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

GetPublishConnectionDetailsTo of this FlexibleServer.

func (*FlexibleServer) GetTerraformResourceType

func (mg *FlexibleServer) GetTerraformResourceType() string

GetTerraformResourceType returns Terraform resource type for this FlexibleServer

func (*FlexibleServer) GetTerraformSchemaVersion

func (tr *FlexibleServer) GetTerraformSchemaVersion() int

GetTerraformSchemaVersion returns the associated Terraform schema version

func (*FlexibleServer) GetWriteConnectionSecretToReference

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

GetWriteConnectionSecretToReference of this FlexibleServer.

func (*FlexibleServer) Hub

func (tr *FlexibleServer) Hub()

Hub marks this type as a conversion hub.

func (*FlexibleServer) LateInitialize

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

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

func (*FlexibleServer) ResolveReferences

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

func (*FlexibleServer) SetConditions

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

SetConditions of this FlexibleServer.

func (*FlexibleServer) SetDeletionPolicy

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

SetDeletionPolicy of this FlexibleServer.

func (*FlexibleServer) SetManagementPolicies

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

SetManagementPolicies of this FlexibleServer.

func (*FlexibleServer) SetObservation

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

SetObservation for this FlexibleServer

func (*FlexibleServer) SetParameters

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

SetParameters for this FlexibleServer

func (*FlexibleServer) SetProviderConfigReference

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

SetProviderConfigReference of this FlexibleServer.

func (*FlexibleServer) SetPublishConnectionDetailsTo

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

SetPublishConnectionDetailsTo of this FlexibleServer.

func (*FlexibleServer) SetWriteConnectionSecretToReference

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

SetWriteConnectionSecretToReference of this FlexibleServer.

type FlexibleServerInitParameters

type FlexibleServerInitParameters struct {

	// The Administrator login for the PostgreSQL Flexible Server. Required when create_mode is Default and authentication.password_auth_enabled is true.
	AdministratorLogin *string `json:"administratorLogin,omitempty" tf:"administrator_login,omitempty"`

	// An authentication block as defined below.
	Authentication *AuthenticationInitParameters `json:"authentication,omitempty" tf:"authentication,omitempty"`

	// Is the storage auto grow for PostgreSQL Flexible Server enabled? Defaults to false.
	AutoGrowEnabled *bool `json:"autoGrowEnabled,omitempty" tf:"auto_grow_enabled,omitempty"`

	// The backup retention days for the PostgreSQL Flexible Server. Possible values are between 7 and 35 days.
	BackupRetentionDays *float64 `json:"backupRetentionDays,omitempty" tf:"backup_retention_days,omitempty"`

	// The creation mode which can be used to restore or replicate existing servers. Possible values are Default, PointInTimeRestore, Replica and Update.
	CreateMode *string `json:"createMode,omitempty" tf:"create_mode,omitempty"`

	// A customer_managed_key block as defined below. Changing this forces a new resource to be created.
	CustomerManagedKey *CustomerManagedKeyInitParameters `json:"customerManagedKey,omitempty" tf:"customer_managed_key,omitempty"`

	// The ID of the virtual network subnet to create the PostgreSQL Flexible Server. The provided subnet should not have any other resource deployed in it and this subnet will be delegated to the PostgreSQL Flexible Server, if not already delegated. Changing this forces a new PostgreSQL Flexible Server 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()
	DelegatedSubnetID *string `json:"delegatedSubnetId,omitempty" tf:"delegated_subnet_id,omitempty"`

	// Reference to a Subnet in network to populate delegatedSubnetId.
	// +kubebuilder:validation:Optional
	DelegatedSubnetIDRef *v1.Reference `json:"delegatedSubnetIdRef,omitempty" tf:"-"`

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

	// Is Geo-Redundant backup enabled on the PostgreSQL Flexible Server. Defaults to false. Changing this forces a new PostgreSQL Flexible Server to be created.
	GeoRedundantBackupEnabled *bool `json:"geoRedundantBackupEnabled,omitempty" tf:"geo_redundant_backup_enabled,omitempty"`

	// A high_availability block as defined below.
	HighAvailability *HighAvailabilityInitParameters `json:"highAvailability,omitempty" tf:"high_availability,omitempty"`

	// An identity block as defined below.
	Identity *IdentityInitParameters `json:"identity,omitempty" tf:"identity,omitempty"`

	// The Azure Region where the PostgreSQL Flexible Server should exist. Changing this forces a new PostgreSQL Flexible Server to be created.
	Location *string `json:"location,omitempty" tf:"location,omitempty"`

	// A maintenance_window block as defined below.
	MaintenanceWindow *MaintenanceWindowInitParameters `json:"maintenanceWindow,omitempty" tf:"maintenance_window,omitempty"`

	// The point in time to restore from source_server_id when create_mode is PointInTimeRestore. Changing this forces a new PostgreSQL Flexible Server to be created.
	PointInTimeRestoreTimeInUtc *string `json:"pointInTimeRestoreTimeInUtc,omitempty" tf:"point_in_time_restore_time_in_utc,omitempty"`

	// The ID of the private DNS zone to create the PostgreSQL Flexible Server.
	// +crossplane:generate:reference:type=github.com/upbound/provider-azure/apis/network/v1beta2.PrivateDNSZone
	// +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractResourceID()
	PrivateDNSZoneID *string `json:"privateDnsZoneId,omitempty" tf:"private_dns_zone_id,omitempty"`

	// Reference to a PrivateDNSZone in network to populate privateDnsZoneId.
	// +kubebuilder:validation:Optional
	PrivateDNSZoneIDRef *v1.Reference `json:"privateDnsZoneIdRef,omitempty" tf:"-"`

	// Selector for a PrivateDNSZone in network to populate privateDnsZoneId.
	// +kubebuilder:validation:Optional
	PrivateDNSZoneIDSelector *v1.Selector `json:"privateDnsZoneIdSelector,omitempty" tf:"-"`

	// The replication role for the PostgreSQL Flexible Server. Possible value is None.
	ReplicationRole *string `json:"replicationRole,omitempty" tf:"replication_role,omitempty"`

	// The SKU Name for the PostgreSQL Flexible Server. The name of the SKU, follows the tier + name pattern (e.g. B_Standard_B1ms, GP_Standard_D2s_v3, MO_Standard_E4s_v3).
	SkuName *string `json:"skuName,omitempty" tf:"sku_name,omitempty"`

	// The resource ID of the source PostgreSQL Flexible Server to be restored. Required when create_mode is PointInTimeRestore or Replica. Changing this forces a new PostgreSQL Flexible Server to be created.
	SourceServerID *string `json:"sourceServerId,omitempty" tf:"source_server_id,omitempty"`

	// The max storage allowed for the PostgreSQL Flexible Server. Possible values are 32768, 65536, 131072, 262144, 524288, 1048576, 2097152, 4193280, 4194304, 8388608, 16777216 and 33553408.
	StorageMb *float64 `json:"storageMb,omitempty" tf:"storage_mb,omitempty"`

	// The name of storage performance tier for IOPS of the PostgreSQL Flexible Server. Possible values are P4, P6, P10, P15,P20, P30,P40, P50,P60, P70 or P80. Default value is dependant on the storage_mb value. Please see the storage_tier defaults based on storage_mb table below.
	StorageTier *string `json:"storageTier,omitempty" tf:"storage_tier,omitempty"`

	// A mapping of tags which should be assigned to the PostgreSQL Flexible Server.
	// +mapType=granular
	Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"`

	// The version of PostgreSQL Flexible Server to use. Possible values are 11,12, 13, 14, 15 and 16. Required when create_mode is Default.
	Version *string `json:"version,omitempty" tf:"version,omitempty"`

	// Specifies the Availability Zone in which the PostgreSQL Flexible Server should be located.
	Zone *string `json:"zone,omitempty" tf:"zone,omitempty"`
}

func (*FlexibleServerInitParameters) DeepCopy

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

func (*FlexibleServerInitParameters) DeepCopyInto

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

type FlexibleServerList

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

FlexibleServerList contains a list of FlexibleServers

func (*FlexibleServerList) DeepCopy

func (in *FlexibleServerList) DeepCopy() *FlexibleServerList

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

func (*FlexibleServerList) DeepCopyInto

func (in *FlexibleServerList) DeepCopyInto(out *FlexibleServerList)

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

func (*FlexibleServerList) DeepCopyObject

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

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

func (*FlexibleServerList) GetItems

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

GetItems of this FlexibleServerList.

type FlexibleServerObservation

type FlexibleServerObservation struct {

	// The Administrator login for the PostgreSQL Flexible Server. Required when create_mode is Default and authentication.password_auth_enabled is true.
	AdministratorLogin *string `json:"administratorLogin,omitempty" tf:"administrator_login,omitempty"`

	// An authentication block as defined below.
	Authentication *AuthenticationObservation `json:"authentication,omitempty" tf:"authentication,omitempty"`

	// Is the storage auto grow for PostgreSQL Flexible Server enabled? Defaults to false.
	AutoGrowEnabled *bool `json:"autoGrowEnabled,omitempty" tf:"auto_grow_enabled,omitempty"`

	// The backup retention days for the PostgreSQL Flexible Server. Possible values are between 7 and 35 days.
	BackupRetentionDays *float64 `json:"backupRetentionDays,omitempty" tf:"backup_retention_days,omitempty"`

	// The creation mode which can be used to restore or replicate existing servers. Possible values are Default, PointInTimeRestore, Replica and Update.
	CreateMode *string `json:"createMode,omitempty" tf:"create_mode,omitempty"`

	// A customer_managed_key block as defined below. Changing this forces a new resource to be created.
	CustomerManagedKey *CustomerManagedKeyObservation `json:"customerManagedKey,omitempty" tf:"customer_managed_key,omitempty"`

	// The ID of the virtual network subnet to create the PostgreSQL Flexible Server. The provided subnet should not have any other resource deployed in it and this subnet will be delegated to the PostgreSQL Flexible Server, if not already delegated. Changing this forces a new PostgreSQL Flexible Server to be created.
	DelegatedSubnetID *string `json:"delegatedSubnetId,omitempty" tf:"delegated_subnet_id,omitempty"`

	// The FQDN of the PostgreSQL Flexible Server.
	Fqdn *string `json:"fqdn,omitempty" tf:"fqdn,omitempty"`

	// Is Geo-Redundant backup enabled on the PostgreSQL Flexible Server. Defaults to false. Changing this forces a new PostgreSQL Flexible Server to be created.
	GeoRedundantBackupEnabled *bool `json:"geoRedundantBackupEnabled,omitempty" tf:"geo_redundant_backup_enabled,omitempty"`

	// A high_availability block as defined below.
	HighAvailability *HighAvailabilityObservation `json:"highAvailability,omitempty" tf:"high_availability,omitempty"`

	// The ID of the PostgreSQL Flexible Server.
	ID *string `json:"id,omitempty" tf:"id,omitempty"`

	// An identity block as defined below.
	Identity *IdentityObservation `json:"identity,omitempty" tf:"identity,omitempty"`

	// The Azure Region where the PostgreSQL Flexible Server should exist. Changing this forces a new PostgreSQL Flexible Server to be created.
	Location *string `json:"location,omitempty" tf:"location,omitempty"`

	// A maintenance_window block as defined below.
	MaintenanceWindow *MaintenanceWindowObservation `json:"maintenanceWindow,omitempty" tf:"maintenance_window,omitempty"`

	// The point in time to restore from source_server_id when create_mode is PointInTimeRestore. Changing this forces a new PostgreSQL Flexible Server to be created.
	PointInTimeRestoreTimeInUtc *string `json:"pointInTimeRestoreTimeInUtc,omitempty" tf:"point_in_time_restore_time_in_utc,omitempty"`

	// The ID of the private DNS zone to create the PostgreSQL Flexible Server.
	PrivateDNSZoneID *string `json:"privateDnsZoneId,omitempty" tf:"private_dns_zone_id,omitempty"`

	// Is public network access enabled?
	PublicNetworkAccessEnabled *bool `json:"publicNetworkAccessEnabled,omitempty" tf:"public_network_access_enabled,omitempty"`

	// The replication role for the PostgreSQL Flexible Server. Possible value is None.
	ReplicationRole *string `json:"replicationRole,omitempty" tf:"replication_role,omitempty"`

	// The name of the Resource Group where the PostgreSQL Flexible Server should exist. Changing this forces a new PostgreSQL Flexible Server to be created.
	ResourceGroupName *string `json:"resourceGroupName,omitempty" tf:"resource_group_name,omitempty"`

	// The SKU Name for the PostgreSQL Flexible Server. The name of the SKU, follows the tier + name pattern (e.g. B_Standard_B1ms, GP_Standard_D2s_v3, MO_Standard_E4s_v3).
	SkuName *string `json:"skuName,omitempty" tf:"sku_name,omitempty"`

	// The resource ID of the source PostgreSQL Flexible Server to be restored. Required when create_mode is PointInTimeRestore or Replica. Changing this forces a new PostgreSQL Flexible Server to be created.
	SourceServerID *string `json:"sourceServerId,omitempty" tf:"source_server_id,omitempty"`

	// The max storage allowed for the PostgreSQL Flexible Server. Possible values are 32768, 65536, 131072, 262144, 524288, 1048576, 2097152, 4193280, 4194304, 8388608, 16777216 and 33553408.
	StorageMb *float64 `json:"storageMb,omitempty" tf:"storage_mb,omitempty"`

	// The name of storage performance tier for IOPS of the PostgreSQL Flexible Server. Possible values are P4, P6, P10, P15,P20, P30,P40, P50,P60, P70 or P80. Default value is dependant on the storage_mb value. Please see the storage_tier defaults based on storage_mb table below.
	StorageTier *string `json:"storageTier,omitempty" tf:"storage_tier,omitempty"`

	// A mapping of tags which should be assigned to the PostgreSQL Flexible Server.
	// +mapType=granular
	Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"`

	// The version of PostgreSQL Flexible Server to use. Possible values are 11,12, 13, 14, 15 and 16. Required when create_mode is Default.
	Version *string `json:"version,omitempty" tf:"version,omitempty"`

	// Specifies the Availability Zone in which the PostgreSQL Flexible Server should be located.
	Zone *string `json:"zone,omitempty" tf:"zone,omitempty"`
}

func (*FlexibleServerObservation) DeepCopy

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

func (*FlexibleServerObservation) DeepCopyInto

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

type FlexibleServerParameters

type FlexibleServerParameters struct {

	// The Administrator login for the PostgreSQL Flexible Server. Required when create_mode is Default and authentication.password_auth_enabled is true.
	// +kubebuilder:validation:Optional
	AdministratorLogin *string `json:"administratorLogin,omitempty" tf:"administrator_login,omitempty"`

	// The Password associated with the administrator_login for the PostgreSQL Flexible Server. Required when create_mode is Default and authentication.password_auth_enabled is true.
	// Password for the master DB user. If you set autoGeneratePassword to true, the Secret referenced here will be created or updated with generated password if it does not already contain one.
	// +kubebuilder:validation:Optional
	AdministratorPasswordSecretRef *v1.SecretKeySelector `json:"administratorPasswordSecretRef,omitempty" tf:"-"`

	// An authentication block as defined below.
	// +kubebuilder:validation:Optional
	Authentication *AuthenticationParameters `json:"authentication,omitempty" tf:"authentication,omitempty"`

	// If true, the password will be auto-generated and stored in the Secret referenced by the administratorPasswordSecretRef field.
	// +upjet:crd:field:TFTag=-
	// +kubebuilder:validation:Optional
	AutoGeneratePassword *bool `json:"autoGeneratePassword,omitempty" tf:"-"`

	// Is the storage auto grow for PostgreSQL Flexible Server enabled? Defaults to false.
	// +kubebuilder:validation:Optional
	AutoGrowEnabled *bool `json:"autoGrowEnabled,omitempty" tf:"auto_grow_enabled,omitempty"`

	// The backup retention days for the PostgreSQL Flexible Server. Possible values are between 7 and 35 days.
	// +kubebuilder:validation:Optional
	BackupRetentionDays *float64 `json:"backupRetentionDays,omitempty" tf:"backup_retention_days,omitempty"`

	// The creation mode which can be used to restore or replicate existing servers. Possible values are Default, PointInTimeRestore, Replica and Update.
	// +kubebuilder:validation:Optional
	CreateMode *string `json:"createMode,omitempty" tf:"create_mode,omitempty"`

	// A customer_managed_key block as defined below. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	CustomerManagedKey *CustomerManagedKeyParameters `json:"customerManagedKey,omitempty" tf:"customer_managed_key,omitempty"`

	// The ID of the virtual network subnet to create the PostgreSQL Flexible Server. The provided subnet should not have any other resource deployed in it and this subnet will be delegated to the PostgreSQL Flexible Server, if not already delegated. Changing this forces a new PostgreSQL Flexible Server 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
	DelegatedSubnetID *string `json:"delegatedSubnetId,omitempty" tf:"delegated_subnet_id,omitempty"`

	// Reference to a Subnet in network to populate delegatedSubnetId.
	// +kubebuilder:validation:Optional
	DelegatedSubnetIDRef *v1.Reference `json:"delegatedSubnetIdRef,omitempty" tf:"-"`

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

	// Is Geo-Redundant backup enabled on the PostgreSQL Flexible Server. Defaults to false. Changing this forces a new PostgreSQL Flexible Server to be created.
	// +kubebuilder:validation:Optional
	GeoRedundantBackupEnabled *bool `json:"geoRedundantBackupEnabled,omitempty" tf:"geo_redundant_backup_enabled,omitempty"`

	// A high_availability block as defined below.
	// +kubebuilder:validation:Optional
	HighAvailability *HighAvailabilityParameters `json:"highAvailability,omitempty" tf:"high_availability,omitempty"`

	// An identity block as defined below.
	// +kubebuilder:validation:Optional
	Identity *IdentityParameters `json:"identity,omitempty" tf:"identity,omitempty"`

	// The Azure Region where the PostgreSQL Flexible Server should exist. Changing this forces a new PostgreSQL Flexible Server to be created.
	// +kubebuilder:validation:Optional
	Location *string `json:"location,omitempty" tf:"location,omitempty"`

	// A maintenance_window block as defined below.
	// +kubebuilder:validation:Optional
	MaintenanceWindow *MaintenanceWindowParameters `json:"maintenanceWindow,omitempty" tf:"maintenance_window,omitempty"`

	// The point in time to restore from source_server_id when create_mode is PointInTimeRestore. Changing this forces a new PostgreSQL Flexible Server to be created.
	// +kubebuilder:validation:Optional
	PointInTimeRestoreTimeInUtc *string `json:"pointInTimeRestoreTimeInUtc,omitempty" tf:"point_in_time_restore_time_in_utc,omitempty"`

	// The ID of the private DNS zone to create the PostgreSQL Flexible Server.
	// +crossplane:generate:reference:type=github.com/upbound/provider-azure/apis/network/v1beta2.PrivateDNSZone
	// +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractResourceID()
	// +kubebuilder:validation:Optional
	PrivateDNSZoneID *string `json:"privateDnsZoneId,omitempty" tf:"private_dns_zone_id,omitempty"`

	// Reference to a PrivateDNSZone in network to populate privateDnsZoneId.
	// +kubebuilder:validation:Optional
	PrivateDNSZoneIDRef *v1.Reference `json:"privateDnsZoneIdRef,omitempty" tf:"-"`

	// Selector for a PrivateDNSZone in network to populate privateDnsZoneId.
	// +kubebuilder:validation:Optional
	PrivateDNSZoneIDSelector *v1.Selector `json:"privateDnsZoneIdSelector,omitempty" tf:"-"`

	// The replication role for the PostgreSQL Flexible Server. Possible value is None.
	// +kubebuilder:validation:Optional
	ReplicationRole *string `json:"replicationRole,omitempty" tf:"replication_role,omitempty"`

	// The name of the Resource Group where the PostgreSQL Flexible Server should exist. Changing this forces a new PostgreSQL Flexible Server 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:"-"`

	// The SKU Name for the PostgreSQL Flexible Server. The name of the SKU, follows the tier + name pattern (e.g. B_Standard_B1ms, GP_Standard_D2s_v3, MO_Standard_E4s_v3).
	// +kubebuilder:validation:Optional
	SkuName *string `json:"skuName,omitempty" tf:"sku_name,omitempty"`

	// The resource ID of the source PostgreSQL Flexible Server to be restored. Required when create_mode is PointInTimeRestore or Replica. Changing this forces a new PostgreSQL Flexible Server to be created.
	// +kubebuilder:validation:Optional
	SourceServerID *string `json:"sourceServerId,omitempty" tf:"source_server_id,omitempty"`

	// The max storage allowed for the PostgreSQL Flexible Server. Possible values are 32768, 65536, 131072, 262144, 524288, 1048576, 2097152, 4193280, 4194304, 8388608, 16777216 and 33553408.
	// +kubebuilder:validation:Optional
	StorageMb *float64 `json:"storageMb,omitempty" tf:"storage_mb,omitempty"`

	// The name of storage performance tier for IOPS of the PostgreSQL Flexible Server. Possible values are P4, P6, P10, P15,P20, P30,P40, P50,P60, P70 or P80. Default value is dependant on the storage_mb value. Please see the storage_tier defaults based on storage_mb table below.
	// +kubebuilder:validation:Optional
	StorageTier *string `json:"storageTier,omitempty" tf:"storage_tier,omitempty"`

	// A mapping of tags which should be assigned to the PostgreSQL Flexible Server.
	// +kubebuilder:validation:Optional
	// +mapType=granular
	Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"`

	// The version of PostgreSQL Flexible Server to use. Possible values are 11,12, 13, 14, 15 and 16. Required when create_mode is Default.
	// +kubebuilder:validation:Optional
	Version *string `json:"version,omitempty" tf:"version,omitempty"`

	// Specifies the Availability Zone in which the PostgreSQL Flexible Server should be located.
	// +kubebuilder:validation:Optional
	Zone *string `json:"zone,omitempty" tf:"zone,omitempty"`
}

func (*FlexibleServerParameters) DeepCopy

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

func (*FlexibleServerParameters) DeepCopyInto

func (in *FlexibleServerParameters) DeepCopyInto(out *FlexibleServerParameters)

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

type FlexibleServerSpec

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

FlexibleServerSpec defines the desired state of FlexibleServer

func (*FlexibleServerSpec) DeepCopy

func (in *FlexibleServerSpec) DeepCopy() *FlexibleServerSpec

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

func (*FlexibleServerSpec) DeepCopyInto

func (in *FlexibleServerSpec) DeepCopyInto(out *FlexibleServerSpec)

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

type FlexibleServerStatus

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

FlexibleServerStatus defines the observed state of FlexibleServer.

func (*FlexibleServerStatus) DeepCopy

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

func (*FlexibleServerStatus) DeepCopyInto

func (in *FlexibleServerStatus) DeepCopyInto(out *FlexibleServerStatus)

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

type HighAvailabilityInitParameters

type HighAvailabilityInitParameters struct {

	// The high availability mode for the PostgreSQL Flexible Server. Possible value are SameZone or ZoneRedundant.
	Mode *string `json:"mode,omitempty" tf:"mode,omitempty"`

	// Specifies the Availability Zone in which the standby Flexible Server should be located.
	StandbyAvailabilityZone *string `json:"standbyAvailabilityZone,omitempty" tf:"standby_availability_zone,omitempty"`
}

func (*HighAvailabilityInitParameters) DeepCopy

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

func (*HighAvailabilityInitParameters) DeepCopyInto

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

type HighAvailabilityObservation

type HighAvailabilityObservation struct {

	// The high availability mode for the PostgreSQL Flexible Server. Possible value are SameZone or ZoneRedundant.
	Mode *string `json:"mode,omitempty" tf:"mode,omitempty"`

	// Specifies the Availability Zone in which the standby Flexible Server should be located.
	StandbyAvailabilityZone *string `json:"standbyAvailabilityZone,omitempty" tf:"standby_availability_zone,omitempty"`
}

func (*HighAvailabilityObservation) DeepCopy

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

func (*HighAvailabilityObservation) DeepCopyInto

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

type HighAvailabilityParameters

type HighAvailabilityParameters struct {

	// The high availability mode for the PostgreSQL Flexible Server. Possible value are SameZone or ZoneRedundant.
	// +kubebuilder:validation:Optional
	Mode *string `json:"mode" tf:"mode,omitempty"`

	// Specifies the Availability Zone in which the standby Flexible Server should be located.
	// +kubebuilder:validation:Optional
	StandbyAvailabilityZone *string `json:"standbyAvailabilityZone,omitempty" tf:"standby_availability_zone,omitempty"`
}

func (*HighAvailabilityParameters) DeepCopy

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

func (*HighAvailabilityParameters) DeepCopyInto

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

type IdentityInitParameters

type IdentityInitParameters struct {

	// A list of User Assigned Managed Identity IDs to be assigned to this PostgreSQL Flexible Server. Required if used together with customer_managed_key block.
	// +listType=set
	IdentityIds []*string `json:"identityIds,omitempty" tf:"identity_ids,omitempty"`

	// Specifies the type of Managed Service Identity that should be configured on this PostgreSQL Flexible Server. The only possible value is UserAssigned.
	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 {

	// A list of User Assigned Managed Identity IDs to be assigned to this PostgreSQL Flexible Server. Required if used together with customer_managed_key block.
	// +listType=set
	IdentityIds []*string `json:"identityIds,omitempty" tf:"identity_ids,omitempty"`

	// Specifies the type of Managed Service Identity that should be configured on this PostgreSQL Flexible Server. The only possible value is UserAssigned.
	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 {

	// A list of User Assigned Managed Identity IDs to be assigned to this PostgreSQL Flexible Server. Required if used together with customer_managed_key block.
	// +kubebuilder:validation:Optional
	// +listType=set
	IdentityIds []*string `json:"identityIds" tf:"identity_ids,omitempty"`

	// Specifies the type of Managed Service Identity that should be configured on this PostgreSQL Flexible Server. The only possible value is UserAssigned.
	// +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 MaintenanceWindowInitParameters

type MaintenanceWindowInitParameters struct {

	// The day of week for maintenance window, where the week starts on a Sunday, i.e. Sunday = 0, Monday = 1. Defaults to 0.
	DayOfWeek *float64 `json:"dayOfWeek,omitempty" tf:"day_of_week,omitempty"`

	// The start hour for maintenance window. Defaults to 0.
	StartHour *float64 `json:"startHour,omitempty" tf:"start_hour,omitempty"`

	// The start minute for maintenance window. Defaults to 0.
	StartMinute *float64 `json:"startMinute,omitempty" tf:"start_minute,omitempty"`
}

func (*MaintenanceWindowInitParameters) DeepCopy

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

func (*MaintenanceWindowInitParameters) DeepCopyInto

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

type MaintenanceWindowObservation

type MaintenanceWindowObservation struct {

	// The day of week for maintenance window, where the week starts on a Sunday, i.e. Sunday = 0, Monday = 1. Defaults to 0.
	DayOfWeek *float64 `json:"dayOfWeek,omitempty" tf:"day_of_week,omitempty"`

	// The start hour for maintenance window. Defaults to 0.
	StartHour *float64 `json:"startHour,omitempty" tf:"start_hour,omitempty"`

	// The start minute for maintenance window. Defaults to 0.
	StartMinute *float64 `json:"startMinute,omitempty" tf:"start_minute,omitempty"`
}

func (*MaintenanceWindowObservation) DeepCopy

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

func (*MaintenanceWindowObservation) DeepCopyInto

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

type MaintenanceWindowParameters

type MaintenanceWindowParameters struct {

	// The day of week for maintenance window, where the week starts on a Sunday, i.e. Sunday = 0, Monday = 1. Defaults to 0.
	// +kubebuilder:validation:Optional
	DayOfWeek *float64 `json:"dayOfWeek,omitempty" tf:"day_of_week,omitempty"`

	// The start hour for maintenance window. Defaults to 0.
	// +kubebuilder:validation:Optional
	StartHour *float64 `json:"startHour,omitempty" tf:"start_hour,omitempty"`

	// The start minute for maintenance window. Defaults to 0.
	// +kubebuilder:validation:Optional
	StartMinute *float64 `json:"startMinute,omitempty" tf:"start_minute,omitempty"`
}

func (*MaintenanceWindowParameters) DeepCopy

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

func (*MaintenanceWindowParameters) DeepCopyInto

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

type Server

type Server struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	// +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.skuName) || (has(self.initProvider) && has(self.initProvider.skuName))",message="spec.forProvider.skuName is a required parameter"
	// +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.sslEnforcementEnabled) || (has(self.initProvider) && has(self.initProvider.sslEnforcementEnabled))",message="spec.forProvider.sslEnforcementEnabled is a required parameter"
	// +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.version) || (has(self.initProvider) && has(self.initProvider.version))",message="spec.forProvider.version is a required parameter"
	Spec   ServerSpec   `json:"spec"`
	Status ServerStatus `json:"status,omitempty"`
}

Server is the Schema for the Servers API. Manages a PostgreSQL Server. +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 (*Server) DeepCopy

func (in *Server) DeepCopy() *Server

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

func (*Server) DeepCopyInto

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

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

func (*Server) DeepCopyObject

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

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

func (*Server) GetCondition

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

GetCondition of this Server.

func (*Server) GetConnectionDetailsMapping

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

GetConnectionDetailsMapping for this Server

func (*Server) GetDeletionPolicy

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

GetDeletionPolicy of this Server.

func (*Server) GetID

func (tr *Server) GetID() string

GetID returns ID of underlying Terraform resource of this Server

func (*Server) GetInitParameters

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

GetInitParameters of this Server

func (*Server) GetManagementPolicies

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

GetManagementPolicies of this Server.

func (*Server) GetMergedParameters

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

GetInitParameters of this Server

func (*Server) GetObservation

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

GetObservation of this Server

func (*Server) GetParameters

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

GetParameters of this Server

func (*Server) GetProviderConfigReference

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

GetProviderConfigReference of this Server.

func (*Server) GetPublishConnectionDetailsTo

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

GetPublishConnectionDetailsTo of this Server.

func (*Server) GetTerraformResourceType

func (mg *Server) GetTerraformResourceType() string

GetTerraformResourceType returns Terraform resource type for this Server

func (*Server) GetTerraformSchemaVersion

func (tr *Server) GetTerraformSchemaVersion() int

GetTerraformSchemaVersion returns the associated Terraform schema version

func (*Server) GetWriteConnectionSecretToReference

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

GetWriteConnectionSecretToReference of this Server.

func (*Server) Hub

func (tr *Server) Hub()

Hub marks this type as a conversion hub.

func (*Server) LateInitialize

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

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

func (*Server) ResolveReferences

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

ResolveReferences of this Server.

func (*Server) SetConditions

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

SetConditions of this Server.

func (*Server) SetDeletionPolicy

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

SetDeletionPolicy of this Server.

func (*Server) SetManagementPolicies

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

SetManagementPolicies of this Server.

func (*Server) SetObservation

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

SetObservation for this Server

func (*Server) SetParameters

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

SetParameters for this Server

func (*Server) SetProviderConfigReference

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

SetProviderConfigReference of this Server.

func (*Server) SetPublishConnectionDetailsTo

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

SetPublishConnectionDetailsTo of this Server.

func (*Server) SetWriteConnectionSecretToReference

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

SetWriteConnectionSecretToReference of this Server.

type ServerIdentityInitParameters

type ServerIdentityInitParameters struct {

	// Specifies the type of Managed Service Identity that should be configured on this PostgreSQL Server. The only possible value is SystemAssigned.
	Type *string `json:"type,omitempty" tf:"type,omitempty"`
}

func (*ServerIdentityInitParameters) DeepCopy

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

func (*ServerIdentityInitParameters) DeepCopyInto

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

type ServerIdentityObservation

type ServerIdentityObservation struct {

	// The Principal ID associated with this Managed Service Identity.
	PrincipalID *string `json:"principalId,omitempty" tf:"principal_id,omitempty"`

	// The Tenant ID associated with this Managed Service Identity.
	TenantID *string `json:"tenantId,omitempty" tf:"tenant_id,omitempty"`

	// Specifies the type of Managed Service Identity that should be configured on this PostgreSQL Server. The only possible value is SystemAssigned.
	Type *string `json:"type,omitempty" tf:"type,omitempty"`
}

func (*ServerIdentityObservation) DeepCopy

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

func (*ServerIdentityObservation) DeepCopyInto

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

type ServerIdentityParameters

type ServerIdentityParameters struct {

	// Specifies the type of Managed Service Identity that should be configured on this PostgreSQL Server. The only possible value is SystemAssigned.
	// +kubebuilder:validation:Optional
	Type *string `json:"type" tf:"type,omitempty"`
}

func (*ServerIdentityParameters) DeepCopy

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

func (*ServerIdentityParameters) DeepCopyInto

func (in *ServerIdentityParameters) DeepCopyInto(out *ServerIdentityParameters)

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

type ServerInitParameters

type ServerInitParameters struct {

	// The Administrator login for the PostgreSQL Server. Required when create_mode is Default. Changing this forces a new resource to be created.
	AdministratorLogin *string `json:"administratorLogin,omitempty" tf:"administrator_login,omitempty"`

	// Enable/Disable auto-growing of the storage. Storage auto-grow prevents your server from running out of storage and becoming read-only. If storage auto grow is enabled, the storage automatically grows without impacting the workload. Defaults to true.
	AutoGrowEnabled *bool `json:"autoGrowEnabled,omitempty" tf:"auto_grow_enabled,omitempty"`

	// Backup retention days for the server, supported values are between 7 and 35 days.
	BackupRetentionDays *float64 `json:"backupRetentionDays,omitempty" tf:"backup_retention_days,omitempty"`

	// The creation mode. Can be used to restore or replicate existing servers. Possible values are Default, Replica, GeoRestore, and PointInTimeRestore. Defaults to Default.
	CreateMode *string `json:"createMode,omitempty" tf:"create_mode,omitempty"`

	// For creation modes other than Default, the source server ID to use.
	CreationSourceServerID *string `json:"creationSourceServerId,omitempty" tf:"creation_source_server_id,omitempty"`

	// Turn Geo-redundant server backups on/off. This allows you to choose between locally redundant or geo-redundant backup storage in the General Purpose and Memory Optimized tiers. When the backups are stored in geo-redundant backup storage, they are not only stored within the region in which your server is hosted, but are also replicated to a paired data center. This provides better protection and ability to restore your server in a different region in the event of a disaster. This is not support for the Basic tier. Changing this forces a new resource to be created.
	GeoRedundantBackupEnabled *bool `json:"geoRedundantBackupEnabled,omitempty" tf:"geo_redundant_backup_enabled,omitempty"`

	// An identity block as defined below.
	Identity *ServerIdentityInitParameters `json:"identity,omitempty" tf:"identity,omitempty"`

	// Whether or not infrastructure is encrypted for this server. Changing this forces a new resource to be created.
	InfrastructureEncryptionEnabled *bool `json:"infrastructureEncryptionEnabled,omitempty" tf:"infrastructure_encryption_enabled,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"`

	// Whether or not public network access is allowed for this server. Defaults to true.
	PublicNetworkAccessEnabled *bool `json:"publicNetworkAccessEnabled,omitempty" tf:"public_network_access_enabled,omitempty"`

	// When create_mode is PointInTimeRestore the point in time to restore from creation_source_server_id. It should be provided in RFC3339 format, e.g. 2013-11-08T22:00:40Z.
	RestorePointInTime *string `json:"restorePointInTime,omitempty" tf:"restore_point_in_time,omitempty"`

	// Specifies if SSL should be enforced on connections. Possible values are true and false.
	SSLEnforcementEnabled *bool `json:"sslEnforcementEnabled,omitempty" tf:"ssl_enforcement_enabled,omitempty"`

	// The minimum TLS version to support on the sever. Possible values are TLSEnforcementDisabled, TLS1_0, TLS1_1, and TLS1_2. Defaults to TLS1_2.
	SSLMinimalTLSVersionEnforced *string `json:"sslMinimalTlsVersionEnforced,omitempty" tf:"ssl_minimal_tls_version_enforced,omitempty"`

	// Specifies the SKU Name for this PostgreSQL Server. The name of the SKU, follows the tier + family + cores pattern (e.g. B_Gen4_1, GP_Gen5_8). For more information see the product documentation. Possible values are B_Gen4_1, B_Gen4_2, B_Gen5_1, B_Gen5_2, GP_Gen4_2, GP_Gen4_4, GP_Gen4_8, GP_Gen4_16, GP_Gen4_32, GP_Gen5_2, GP_Gen5_4, GP_Gen5_8, GP_Gen5_16, GP_Gen5_32, GP_Gen5_64, MO_Gen5_2, MO_Gen5_4, MO_Gen5_8, MO_Gen5_16 and MO_Gen5_32.
	SkuName *string `json:"skuName,omitempty" tf:"sku_name,omitempty"`

	// Max storage allowed for a server. Possible values are between 5120 MB(5GB) and 1048576 MB(1TB) for the Basic SKU and between 5120 MB(5GB) and 16777216 MB(16TB) for General Purpose/Memory Optimized SKUs. For more information see the product documentation.
	StorageMb *float64 `json:"storageMb,omitempty" tf:"storage_mb,omitempty"`

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

	// Threat detection policy configuration, known in the API as Server Security Alerts Policy. The threat_detection_policy block supports fields documented below.
	ThreatDetectionPolicy *ThreatDetectionPolicyInitParameters `json:"threatDetectionPolicy,omitempty" tf:"threat_detection_policy,omitempty"`

	// Specifies the version of PostgreSQL to use. Valid values are 9.5, 9.6, 10, 10.0, 10.2 and 11. Changing this forces a new resource to be created.
	Version *string `json:"version,omitempty" tf:"version,omitempty"`
}

func (*ServerInitParameters) DeepCopy

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

func (*ServerInitParameters) DeepCopyInto

func (in *ServerInitParameters) DeepCopyInto(out *ServerInitParameters)

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

type ServerList

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

ServerList contains a list of Servers

func (*ServerList) DeepCopy

func (in *ServerList) DeepCopy() *ServerList

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

func (*ServerList) DeepCopyInto

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

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

func (*ServerList) DeepCopyObject

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

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

func (*ServerList) GetItems

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

GetItems of this ServerList.

type ServerObservation

type ServerObservation struct {

	// The Administrator login for the PostgreSQL Server. Required when create_mode is Default. Changing this forces a new resource to be created.
	AdministratorLogin *string `json:"administratorLogin,omitempty" tf:"administrator_login,omitempty"`

	// Enable/Disable auto-growing of the storage. Storage auto-grow prevents your server from running out of storage and becoming read-only. If storage auto grow is enabled, the storage automatically grows without impacting the workload. Defaults to true.
	AutoGrowEnabled *bool `json:"autoGrowEnabled,omitempty" tf:"auto_grow_enabled,omitempty"`

	// Backup retention days for the server, supported values are between 7 and 35 days.
	BackupRetentionDays *float64 `json:"backupRetentionDays,omitempty" tf:"backup_retention_days,omitempty"`

	// The creation mode. Can be used to restore or replicate existing servers. Possible values are Default, Replica, GeoRestore, and PointInTimeRestore. Defaults to Default.
	CreateMode *string `json:"createMode,omitempty" tf:"create_mode,omitempty"`

	// For creation modes other than Default, the source server ID to use.
	CreationSourceServerID *string `json:"creationSourceServerId,omitempty" tf:"creation_source_server_id,omitempty"`

	// The FQDN of the PostgreSQL Server.
	Fqdn *string `json:"fqdn,omitempty" tf:"fqdn,omitempty"`

	// Turn Geo-redundant server backups on/off. This allows you to choose between locally redundant or geo-redundant backup storage in the General Purpose and Memory Optimized tiers. When the backups are stored in geo-redundant backup storage, they are not only stored within the region in which your server is hosted, but are also replicated to a paired data center. This provides better protection and ability to restore your server in a different region in the event of a disaster. This is not support for the Basic tier. Changing this forces a new resource to be created.
	GeoRedundantBackupEnabled *bool `json:"geoRedundantBackupEnabled,omitempty" tf:"geo_redundant_backup_enabled,omitempty"`

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

	// An identity block as defined below.
	Identity *ServerIdentityObservation `json:"identity,omitempty" tf:"identity,omitempty"`

	// Whether or not infrastructure is encrypted for this server. Changing this forces a new resource to be created.
	InfrastructureEncryptionEnabled *bool `json:"infrastructureEncryptionEnabled,omitempty" tf:"infrastructure_encryption_enabled,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"`

	// Whether or not public network access is allowed for this server. Defaults to true.
	PublicNetworkAccessEnabled *bool `json:"publicNetworkAccessEnabled,omitempty" tf:"public_network_access_enabled,omitempty"`

	// The name of the resource group in which to create the PostgreSQL Server. Changing this forces a new resource to be created.
	ResourceGroupName *string `json:"resourceGroupName,omitempty" tf:"resource_group_name,omitempty"`

	// When create_mode is PointInTimeRestore the point in time to restore from creation_source_server_id. It should be provided in RFC3339 format, e.g. 2013-11-08T22:00:40Z.
	RestorePointInTime *string `json:"restorePointInTime,omitempty" tf:"restore_point_in_time,omitempty"`

	// Specifies if SSL should be enforced on connections. Possible values are true and false.
	SSLEnforcementEnabled *bool `json:"sslEnforcementEnabled,omitempty" tf:"ssl_enforcement_enabled,omitempty"`

	// The minimum TLS version to support on the sever. Possible values are TLSEnforcementDisabled, TLS1_0, TLS1_1, and TLS1_2. Defaults to TLS1_2.
	SSLMinimalTLSVersionEnforced *string `json:"sslMinimalTlsVersionEnforced,omitempty" tf:"ssl_minimal_tls_version_enforced,omitempty"`

	// Specifies the SKU Name for this PostgreSQL Server. The name of the SKU, follows the tier + family + cores pattern (e.g. B_Gen4_1, GP_Gen5_8). For more information see the product documentation. Possible values are B_Gen4_1, B_Gen4_2, B_Gen5_1, B_Gen5_2, GP_Gen4_2, GP_Gen4_4, GP_Gen4_8, GP_Gen4_16, GP_Gen4_32, GP_Gen5_2, GP_Gen5_4, GP_Gen5_8, GP_Gen5_16, GP_Gen5_32, GP_Gen5_64, MO_Gen5_2, MO_Gen5_4, MO_Gen5_8, MO_Gen5_16 and MO_Gen5_32.
	SkuName *string `json:"skuName,omitempty" tf:"sku_name,omitempty"`

	// Max storage allowed for a server. Possible values are between 5120 MB(5GB) and 1048576 MB(1TB) for the Basic SKU and between 5120 MB(5GB) and 16777216 MB(16TB) for General Purpose/Memory Optimized SKUs. For more information see the product documentation.
	StorageMb *float64 `json:"storageMb,omitempty" tf:"storage_mb,omitempty"`

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

	// Threat detection policy configuration, known in the API as Server Security Alerts Policy. The threat_detection_policy block supports fields documented below.
	ThreatDetectionPolicy *ThreatDetectionPolicyObservation `json:"threatDetectionPolicy,omitempty" tf:"threat_detection_policy,omitempty"`

	// Specifies the version of PostgreSQL to use. Valid values are 9.5, 9.6, 10, 10.0, 10.2 and 11. Changing this forces a new resource to be created.
	Version *string `json:"version,omitempty" tf:"version,omitempty"`
}

func (*ServerObservation) DeepCopy

func (in *ServerObservation) DeepCopy() *ServerObservation

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

func (*ServerObservation) DeepCopyInto

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

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

type ServerParameters

type ServerParameters struct {

	// The Administrator login for the PostgreSQL Server. Required when create_mode is Default. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	AdministratorLogin *string `json:"administratorLogin,omitempty" tf:"administrator_login,omitempty"`

	// The Password associated with the administrator_login for the PostgreSQL Server. Required when create_mode is Default.
	// +kubebuilder:validation:Optional
	AdministratorLoginPasswordSecretRef *v1.SecretKeySelector `json:"administratorLoginPasswordSecretRef,omitempty" tf:"-"`

	// Enable/Disable auto-growing of the storage. Storage auto-grow prevents your server from running out of storage and becoming read-only. If storage auto grow is enabled, the storage automatically grows without impacting the workload. Defaults to true.
	// +kubebuilder:validation:Optional
	AutoGrowEnabled *bool `json:"autoGrowEnabled,omitempty" tf:"auto_grow_enabled,omitempty"`

	// Backup retention days for the server, supported values are between 7 and 35 days.
	// +kubebuilder:validation:Optional
	BackupRetentionDays *float64 `json:"backupRetentionDays,omitempty" tf:"backup_retention_days,omitempty"`

	// The creation mode. Can be used to restore or replicate existing servers. Possible values are Default, Replica, GeoRestore, and PointInTimeRestore. Defaults to Default.
	// +kubebuilder:validation:Optional
	CreateMode *string `json:"createMode,omitempty" tf:"create_mode,omitempty"`

	// For creation modes other than Default, the source server ID to use.
	// +kubebuilder:validation:Optional
	CreationSourceServerID *string `json:"creationSourceServerId,omitempty" tf:"creation_source_server_id,omitempty"`

	// Turn Geo-redundant server backups on/off. This allows you to choose between locally redundant or geo-redundant backup storage in the General Purpose and Memory Optimized tiers. When the backups are stored in geo-redundant backup storage, they are not only stored within the region in which your server is hosted, but are also replicated to a paired data center. This provides better protection and ability to restore your server in a different region in the event of a disaster. This is not support for the Basic tier. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	GeoRedundantBackupEnabled *bool `json:"geoRedundantBackupEnabled,omitempty" tf:"geo_redundant_backup_enabled,omitempty"`

	// An identity block as defined below.
	// +kubebuilder:validation:Optional
	Identity *ServerIdentityParameters `json:"identity,omitempty" tf:"identity,omitempty"`

	// Whether or not infrastructure is encrypted for this server. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	InfrastructureEncryptionEnabled *bool `json:"infrastructureEncryptionEnabled,omitempty" tf:"infrastructure_encryption_enabled,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"`

	// Whether or not public network access is allowed for this server. Defaults to true.
	// +kubebuilder:validation:Optional
	PublicNetworkAccessEnabled *bool `json:"publicNetworkAccessEnabled,omitempty" tf:"public_network_access_enabled,omitempty"`

	// The name of the resource group in which to create the PostgreSQL Server. 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:"-"`

	// When create_mode is PointInTimeRestore the point in time to restore from creation_source_server_id. It should be provided in RFC3339 format, e.g. 2013-11-08T22:00:40Z.
	// +kubebuilder:validation:Optional
	RestorePointInTime *string `json:"restorePointInTime,omitempty" tf:"restore_point_in_time,omitempty"`

	// Specifies if SSL should be enforced on connections. Possible values are true and false.
	// +kubebuilder:validation:Optional
	SSLEnforcementEnabled *bool `json:"sslEnforcementEnabled,omitempty" tf:"ssl_enforcement_enabled,omitempty"`

	// The minimum TLS version to support on the sever. Possible values are TLSEnforcementDisabled, TLS1_0, TLS1_1, and TLS1_2. Defaults to TLS1_2.
	// +kubebuilder:validation:Optional
	SSLMinimalTLSVersionEnforced *string `json:"sslMinimalTlsVersionEnforced,omitempty" tf:"ssl_minimal_tls_version_enforced,omitempty"`

	// Specifies the SKU Name for this PostgreSQL Server. The name of the SKU, follows the tier + family + cores pattern (e.g. B_Gen4_1, GP_Gen5_8). For more information see the product documentation. Possible values are B_Gen4_1, B_Gen4_2, B_Gen5_1, B_Gen5_2, GP_Gen4_2, GP_Gen4_4, GP_Gen4_8, GP_Gen4_16, GP_Gen4_32, GP_Gen5_2, GP_Gen5_4, GP_Gen5_8, GP_Gen5_16, GP_Gen5_32, GP_Gen5_64, MO_Gen5_2, MO_Gen5_4, MO_Gen5_8, MO_Gen5_16 and MO_Gen5_32.
	// +kubebuilder:validation:Optional
	SkuName *string `json:"skuName,omitempty" tf:"sku_name,omitempty"`

	// Max storage allowed for a server. Possible values are between 5120 MB(5GB) and 1048576 MB(1TB) for the Basic SKU and between 5120 MB(5GB) and 16777216 MB(16TB) for General Purpose/Memory Optimized SKUs. For more information see the product documentation.
	// +kubebuilder:validation:Optional
	StorageMb *float64 `json:"storageMb,omitempty" tf:"storage_mb,omitempty"`

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

	// Threat detection policy configuration, known in the API as Server Security Alerts Policy. The threat_detection_policy block supports fields documented below.
	// +kubebuilder:validation:Optional
	ThreatDetectionPolicy *ThreatDetectionPolicyParameters `json:"threatDetectionPolicy,omitempty" tf:"threat_detection_policy,omitempty"`

	// Specifies the version of PostgreSQL to use. Valid values are 9.5, 9.6, 10, 10.0, 10.2 and 11. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	Version *string `json:"version,omitempty" tf:"version,omitempty"`
}

func (*ServerParameters) DeepCopy

func (in *ServerParameters) DeepCopy() *ServerParameters

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

func (*ServerParameters) DeepCopyInto

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

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

type ServerSpec

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

ServerSpec defines the desired state of Server

func (*ServerSpec) DeepCopy

func (in *ServerSpec) DeepCopy() *ServerSpec

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

func (*ServerSpec) DeepCopyInto

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

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

type ServerStatus

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

ServerStatus defines the observed state of Server.

func (*ServerStatus) DeepCopy

func (in *ServerStatus) DeepCopy() *ServerStatus

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

func (*ServerStatus) DeepCopyInto

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

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

type ThreatDetectionPolicyInitParameters

type ThreatDetectionPolicyInitParameters struct {

	// Specifies a list of alerts which should be disabled. Possible values are Sql_Injection, Sql_Injection_Vulnerability, Access_Anomaly, Data_Exfiltration and Unsafe_Action.
	// +listType=set
	DisabledAlerts []*string `json:"disabledAlerts,omitempty" tf:"disabled_alerts,omitempty"`

	// Should the account administrators be emailed when this alert is triggered?
	EmailAccountAdmins *bool `json:"emailAccountAdmins,omitempty" tf:"email_account_admins,omitempty"`

	// A list of email addresses which alerts should be sent to.
	// +listType=set
	EmailAddresses []*string `json:"emailAddresses,omitempty" tf:"email_addresses,omitempty"`

	// Is the policy enabled?
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// Specifies the number of days to keep in the Threat Detection audit logs.
	RetentionDays *float64 `json:"retentionDays,omitempty" tf:"retention_days,omitempty"`

	// Specifies the blob storage endpoint (e.g. https://example.blob.core.windows.net). This blob storage will hold all Threat Detection audit logs.
	StorageEndpoint *string `json:"storageEndpoint,omitempty" tf:"storage_endpoint,omitempty"`
}

func (*ThreatDetectionPolicyInitParameters) DeepCopy

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

func (*ThreatDetectionPolicyInitParameters) DeepCopyInto

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

type ThreatDetectionPolicyObservation

type ThreatDetectionPolicyObservation struct {

	// Specifies a list of alerts which should be disabled. Possible values are Sql_Injection, Sql_Injection_Vulnerability, Access_Anomaly, Data_Exfiltration and Unsafe_Action.
	// +listType=set
	DisabledAlerts []*string `json:"disabledAlerts,omitempty" tf:"disabled_alerts,omitempty"`

	// Should the account administrators be emailed when this alert is triggered?
	EmailAccountAdmins *bool `json:"emailAccountAdmins,omitempty" tf:"email_account_admins,omitempty"`

	// A list of email addresses which alerts should be sent to.
	// +listType=set
	EmailAddresses []*string `json:"emailAddresses,omitempty" tf:"email_addresses,omitempty"`

	// Is the policy enabled?
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// Specifies the number of days to keep in the Threat Detection audit logs.
	RetentionDays *float64 `json:"retentionDays,omitempty" tf:"retention_days,omitempty"`

	// Specifies the blob storage endpoint (e.g. https://example.blob.core.windows.net). This blob storage will hold all Threat Detection audit logs.
	StorageEndpoint *string `json:"storageEndpoint,omitempty" tf:"storage_endpoint,omitempty"`
}

func (*ThreatDetectionPolicyObservation) DeepCopy

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

func (*ThreatDetectionPolicyObservation) DeepCopyInto

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

type ThreatDetectionPolicyParameters

type ThreatDetectionPolicyParameters struct {

	// Specifies a list of alerts which should be disabled. Possible values are Sql_Injection, Sql_Injection_Vulnerability, Access_Anomaly, Data_Exfiltration and Unsafe_Action.
	// +kubebuilder:validation:Optional
	// +listType=set
	DisabledAlerts []*string `json:"disabledAlerts,omitempty" tf:"disabled_alerts,omitempty"`

	// Should the account administrators be emailed when this alert is triggered?
	// +kubebuilder:validation:Optional
	EmailAccountAdmins *bool `json:"emailAccountAdmins,omitempty" tf:"email_account_admins,omitempty"`

	// A list of email addresses which alerts should be sent to.
	// +kubebuilder:validation:Optional
	// +listType=set
	EmailAddresses []*string `json:"emailAddresses,omitempty" tf:"email_addresses,omitempty"`

	// Is the policy enabled?
	// +kubebuilder:validation:Optional
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// Specifies the number of days to keep in the Threat Detection audit logs.
	// +kubebuilder:validation:Optional
	RetentionDays *float64 `json:"retentionDays,omitempty" tf:"retention_days,omitempty"`

	// Specifies the identifier key of the Threat Detection audit storage account.
	// +kubebuilder:validation:Optional
	StorageAccountAccessKeySecretRef *v1.SecretKeySelector `json:"storageAccountAccessKeySecretRef,omitempty" tf:"-"`

	// Specifies the blob storage endpoint (e.g. https://example.blob.core.windows.net). This blob storage will hold all Threat Detection audit logs.
	// +kubebuilder:validation:Optional
	StorageEndpoint *string `json:"storageEndpoint,omitempty" tf:"storage_endpoint,omitempty"`
}

func (*ThreatDetectionPolicyParameters) DeepCopy

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

func (*ThreatDetectionPolicyParameters) DeepCopyInto

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