v1beta1

package
v1.1.0 Latest Latest
Warning

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

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

Documentation

Overview

+kubebuilder:object:generate=true +groupName=compute.azure.upbound.io +versionName=v1beta1

Index

Constants

View Source
const (
	CRDGroup   = "compute.azure.upbound.io"
	CRDVersion = "v1beta1"
)

Package type metadata.

Variables

View Source
var (
	AvailabilitySet_Kind             = "AvailabilitySet"
	AvailabilitySet_GroupKind        = schema.GroupKind{Group: CRDGroup, Kind: AvailabilitySet_Kind}.String()
	AvailabilitySet_KindAPIVersion   = AvailabilitySet_Kind + "." + CRDGroupVersion.String()
	AvailabilitySet_GroupVersionKind = CRDGroupVersion.WithKind(AvailabilitySet_Kind)
)

Repository type metadata.

View Source
var (
	CapacityReservation_Kind             = "CapacityReservation"
	CapacityReservation_GroupKind        = schema.GroupKind{Group: CRDGroup, Kind: CapacityReservation_Kind}.String()
	CapacityReservation_KindAPIVersion   = CapacityReservation_Kind + "." + CRDGroupVersion.String()
	CapacityReservation_GroupVersionKind = CRDGroupVersion.WithKind(CapacityReservation_Kind)
)

Repository type metadata.

View Source
var (
	CapacityReservationGroup_Kind             = "CapacityReservationGroup"
	CapacityReservationGroup_GroupKind        = schema.GroupKind{Group: CRDGroup, Kind: CapacityReservationGroup_Kind}.String()
	CapacityReservationGroup_KindAPIVersion   = CapacityReservationGroup_Kind + "." + CRDGroupVersion.String()
	CapacityReservationGroup_GroupVersionKind = CRDGroupVersion.WithKind(CapacityReservationGroup_Kind)
)

Repository type metadata.

View Source
var (
	DedicatedHost_Kind             = "DedicatedHost"
	DedicatedHost_GroupKind        = schema.GroupKind{Group: CRDGroup, Kind: DedicatedHost_Kind}.String()
	DedicatedHost_KindAPIVersion   = DedicatedHost_Kind + "." + CRDGroupVersion.String()
	DedicatedHost_GroupVersionKind = CRDGroupVersion.WithKind(DedicatedHost_Kind)
)

Repository type metadata.

View Source
var (
	DiskAccess_Kind             = "DiskAccess"
	DiskAccess_GroupKind        = schema.GroupKind{Group: CRDGroup, Kind: DiskAccess_Kind}.String()
	DiskAccess_KindAPIVersion   = DiskAccess_Kind + "." + CRDGroupVersion.String()
	DiskAccess_GroupVersionKind = CRDGroupVersion.WithKind(DiskAccess_Kind)
)

Repository type metadata.

View Source
var (
	DiskEncryptionSet_Kind             = "DiskEncryptionSet"
	DiskEncryptionSet_GroupKind        = schema.GroupKind{Group: CRDGroup, Kind: DiskEncryptionSet_Kind}.String()
	DiskEncryptionSet_KindAPIVersion   = DiskEncryptionSet_Kind + "." + CRDGroupVersion.String()
	DiskEncryptionSet_GroupVersionKind = CRDGroupVersion.WithKind(DiskEncryptionSet_Kind)
)

Repository type metadata.

View Source
var (
	GalleryApplication_Kind             = "GalleryApplication"
	GalleryApplication_GroupKind        = schema.GroupKind{Group: CRDGroup, Kind: GalleryApplication_Kind}.String()
	GalleryApplication_KindAPIVersion   = GalleryApplication_Kind + "." + CRDGroupVersion.String()
	GalleryApplication_GroupVersionKind = CRDGroupVersion.WithKind(GalleryApplication_Kind)
)

Repository type metadata.

View Source
var (
	GalleryApplicationVersion_Kind             = "GalleryApplicationVersion"
	GalleryApplicationVersion_GroupKind        = schema.GroupKind{Group: CRDGroup, Kind: GalleryApplicationVersion_Kind}.String()
	GalleryApplicationVersion_KindAPIVersion   = GalleryApplicationVersion_Kind + "." + CRDGroupVersion.String()
	GalleryApplicationVersion_GroupVersionKind = CRDGroupVersion.WithKind(GalleryApplicationVersion_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 (
	Image_Kind             = "Image"
	Image_GroupKind        = schema.GroupKind{Group: CRDGroup, Kind: Image_Kind}.String()
	Image_KindAPIVersion   = Image_Kind + "." + CRDGroupVersion.String()
	Image_GroupVersionKind = CRDGroupVersion.WithKind(Image_Kind)
)

Repository type metadata.

View Source
var (
	LinuxVirtualMachine_Kind             = "LinuxVirtualMachine"
	LinuxVirtualMachine_GroupKind        = schema.GroupKind{Group: CRDGroup, Kind: LinuxVirtualMachine_Kind}.String()
	LinuxVirtualMachine_KindAPIVersion   = LinuxVirtualMachine_Kind + "." + CRDGroupVersion.String()
	LinuxVirtualMachine_GroupVersionKind = CRDGroupVersion.WithKind(LinuxVirtualMachine_Kind)
)

Repository type metadata.

View Source
var (
	LinuxVirtualMachineScaleSet_Kind             = "LinuxVirtualMachineScaleSet"
	LinuxVirtualMachineScaleSet_GroupKind        = schema.GroupKind{Group: CRDGroup, Kind: LinuxVirtualMachineScaleSet_Kind}.String()
	LinuxVirtualMachineScaleSet_KindAPIVersion   = LinuxVirtualMachineScaleSet_Kind + "." + CRDGroupVersion.String()
	LinuxVirtualMachineScaleSet_GroupVersionKind = CRDGroupVersion.WithKind(LinuxVirtualMachineScaleSet_Kind)
)

Repository type metadata.

View Source
var (
	ManagedDisk_Kind             = "ManagedDisk"
	ManagedDisk_GroupKind        = schema.GroupKind{Group: CRDGroup, Kind: ManagedDisk_Kind}.String()
	ManagedDisk_KindAPIVersion   = ManagedDisk_Kind + "." + CRDGroupVersion.String()
	ManagedDisk_GroupVersionKind = CRDGroupVersion.WithKind(ManagedDisk_Kind)
)

Repository type metadata.

View Source
var (
	ManagedDiskSASToken_Kind             = "ManagedDiskSASToken"
	ManagedDiskSASToken_GroupKind        = schema.GroupKind{Group: CRDGroup, Kind: ManagedDiskSASToken_Kind}.String()
	ManagedDiskSASToken_KindAPIVersion   = ManagedDiskSASToken_Kind + "." + CRDGroupVersion.String()
	ManagedDiskSASToken_GroupVersionKind = CRDGroupVersion.WithKind(ManagedDiskSASToken_Kind)
)

Repository type metadata.

View Source
var (
	OrchestratedVirtualMachineScaleSet_Kind             = "OrchestratedVirtualMachineScaleSet"
	OrchestratedVirtualMachineScaleSet_GroupKind        = schema.GroupKind{Group: CRDGroup, Kind: OrchestratedVirtualMachineScaleSet_Kind}.String()
	OrchestratedVirtualMachineScaleSet_KindAPIVersion   = OrchestratedVirtualMachineScaleSet_Kind + "." + CRDGroupVersion.String()
	OrchestratedVirtualMachineScaleSet_GroupVersionKind = CRDGroupVersion.WithKind(OrchestratedVirtualMachineScaleSet_Kind)
)

Repository type metadata.

View Source
var (
	ProximityPlacementGroup_Kind             = "ProximityPlacementGroup"
	ProximityPlacementGroup_GroupKind        = schema.GroupKind{Group: CRDGroup, Kind: ProximityPlacementGroup_Kind}.String()
	ProximityPlacementGroup_KindAPIVersion   = ProximityPlacementGroup_Kind + "." + CRDGroupVersion.String()
	ProximityPlacementGroup_GroupVersionKind = CRDGroupVersion.WithKind(ProximityPlacementGroup_Kind)
)

Repository type metadata.

View Source
var (
	SharedImage_Kind             = "SharedImage"
	SharedImage_GroupKind        = schema.GroupKind{Group: CRDGroup, Kind: SharedImage_Kind}.String()
	SharedImage_KindAPIVersion   = SharedImage_Kind + "." + CRDGroupVersion.String()
	SharedImage_GroupVersionKind = CRDGroupVersion.WithKind(SharedImage_Kind)
)

Repository type metadata.

View Source
var (
	SharedImageGallery_Kind             = "SharedImageGallery"
	SharedImageGallery_GroupKind        = schema.GroupKind{Group: CRDGroup, Kind: SharedImageGallery_Kind}.String()
	SharedImageGallery_KindAPIVersion   = SharedImageGallery_Kind + "." + CRDGroupVersion.String()
	SharedImageGallery_GroupVersionKind = CRDGroupVersion.WithKind(SharedImageGallery_Kind)
)

Repository type metadata.

View Source
var (
	Snapshot_Kind             = "Snapshot"
	Snapshot_GroupKind        = schema.GroupKind{Group: CRDGroup, Kind: Snapshot_Kind}.String()
	Snapshot_KindAPIVersion   = Snapshot_Kind + "." + CRDGroupVersion.String()
	Snapshot_GroupVersionKind = CRDGroupVersion.WithKind(Snapshot_Kind)
)

Repository type metadata.

View Source
var (
	SSHPublicKey_Kind             = "SSHPublicKey"
	SSHPublicKey_GroupKind        = schema.GroupKind{Group: CRDGroup, Kind: SSHPublicKey_Kind}.String()
	SSHPublicKey_KindAPIVersion   = SSHPublicKey_Kind + "." + CRDGroupVersion.String()
	SSHPublicKey_GroupVersionKind = CRDGroupVersion.WithKind(SSHPublicKey_Kind)
)

Repository type metadata.

View Source
var (
	VirtualMachineDataDiskAttachment_Kind             = "VirtualMachineDataDiskAttachment"
	VirtualMachineDataDiskAttachment_GroupKind        = schema.GroupKind{Group: CRDGroup, Kind: VirtualMachineDataDiskAttachment_Kind}.String()
	VirtualMachineDataDiskAttachment_KindAPIVersion   = VirtualMachineDataDiskAttachment_Kind + "." + CRDGroupVersion.String()
	VirtualMachineDataDiskAttachment_GroupVersionKind = CRDGroupVersion.WithKind(VirtualMachineDataDiskAttachment_Kind)
)

Repository type metadata.

View Source
var (
	VirtualMachineExtension_Kind             = "VirtualMachineExtension"
	VirtualMachineExtension_GroupKind        = schema.GroupKind{Group: CRDGroup, Kind: VirtualMachineExtension_Kind}.String()
	VirtualMachineExtension_KindAPIVersion   = VirtualMachineExtension_Kind + "." + CRDGroupVersion.String()
	VirtualMachineExtension_GroupVersionKind = CRDGroupVersion.WithKind(VirtualMachineExtension_Kind)
)

Repository type metadata.

View Source
var (
	WindowsVirtualMachine_Kind             = "WindowsVirtualMachine"
	WindowsVirtualMachine_GroupKind        = schema.GroupKind{Group: CRDGroup, Kind: WindowsVirtualMachine_Kind}.String()
	WindowsVirtualMachine_KindAPIVersion   = WindowsVirtualMachine_Kind + "." + CRDGroupVersion.String()
	WindowsVirtualMachine_GroupVersionKind = CRDGroupVersion.WithKind(WindowsVirtualMachine_Kind)
)

Repository type metadata.

View Source
var (
	WindowsVirtualMachineScaleSet_Kind             = "WindowsVirtualMachineScaleSet"
	WindowsVirtualMachineScaleSet_GroupKind        = schema.GroupKind{Group: CRDGroup, Kind: WindowsVirtualMachineScaleSet_Kind}.String()
	WindowsVirtualMachineScaleSet_KindAPIVersion   = WindowsVirtualMachineScaleSet_Kind + "." + CRDGroupVersion.String()
	WindowsVirtualMachineScaleSet_GroupVersionKind = CRDGroupVersion.WithKind(WindowsVirtualMachineScaleSet_Kind)
)

Repository type metadata.

Functions

This section is empty.

Types

type AdditionalCapabilitiesInitParameters added in v0.35.0

type AdditionalCapabilitiesInitParameters struct {

	// Should the capacity to enable Data Disks of the UltraSSD_LRS storage account type be supported on this Virtual Machine? Defaults to false.
	UltraSsdEnabled *bool `json:"ultraSsdEnabled,omitempty" tf:"ultra_ssd_enabled,omitempty"`
}

func (*AdditionalCapabilitiesInitParameters) DeepCopy added in v0.35.0

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

func (*AdditionalCapabilitiesInitParameters) DeepCopyInto added in v0.35.0

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

type AdditionalCapabilitiesObservation

type AdditionalCapabilitiesObservation struct {

	// Should the capacity to enable Data Disks of the UltraSSD_LRS storage account type be supported on this Virtual Machine? Defaults to false.
	UltraSsdEnabled *bool `json:"ultraSsdEnabled,omitempty" tf:"ultra_ssd_enabled,omitempty"`
}

func (*AdditionalCapabilitiesObservation) DeepCopy

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

func (*AdditionalCapabilitiesObservation) DeepCopyInto

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

type AdditionalCapabilitiesParameters

type AdditionalCapabilitiesParameters struct {

	// Should the capacity to enable Data Disks of the UltraSSD_LRS storage account type be supported on this Virtual Machine? Defaults to false.
	// +kubebuilder:validation:Optional
	UltraSsdEnabled *bool `json:"ultraSsdEnabled,omitempty" tf:"ultra_ssd_enabled,omitempty"`
}

func (*AdditionalCapabilitiesParameters) DeepCopy

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

func (*AdditionalCapabilitiesParameters) DeepCopyInto

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

type AdditionalUnattendContentInitParameters added in v0.35.0

type AdditionalUnattendContentInitParameters struct {

	// The name of the setting to which the content applies. Possible values are AutoLogon and FirstLogonCommands. Changing this forces a new resource to be created.
	Setting *string `json:"setting,omitempty" tf:"setting,omitempty"`
}

func (*AdditionalUnattendContentInitParameters) DeepCopy added in v0.35.0

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

func (*AdditionalUnattendContentInitParameters) DeepCopyInto added in v0.35.0

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

type AdditionalUnattendContentObservation

type AdditionalUnattendContentObservation struct {

	// The name of the setting to which the content applies. Possible values are AutoLogon and FirstLogonCommands. Changing this forces a new resource to be created.
	Setting *string `json:"setting,omitempty" tf:"setting,omitempty"`
}

func (*AdditionalUnattendContentObservation) DeepCopy

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

func (*AdditionalUnattendContentObservation) DeepCopyInto

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

type AdditionalUnattendContentParameters

type AdditionalUnattendContentParameters struct {

	// The XML formatted content that is added to the unattend.xml file for the specified path and component. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Required
	ContentSecretRef v1.SecretKeySelector `json:"contentSecretRef" tf:"-"`

	// The name of the setting to which the content applies. Possible values are AutoLogon and FirstLogonCommands. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	Setting *string `json:"setting" tf:"setting,omitempty"`
}

func (*AdditionalUnattendContentParameters) DeepCopy

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

func (*AdditionalUnattendContentParameters) DeepCopyInto

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

type AdminSSHKeyInitParameters added in v0.35.0

type AdminSSHKeyInitParameters struct {

	// The Public Key which should be used for authentication, which needs to be at least 2048-bit and in ssh-rsa format. Changing this forces a new resource to be created.
	PublicKey *string `json:"publicKey,omitempty" tf:"public_key,omitempty"`

	// The Username for which this Public SSH Key should be configured. Changing this forces a new resource to be created.
	Username *string `json:"username,omitempty" tf:"username,omitempty"`
}

func (*AdminSSHKeyInitParameters) DeepCopy added in v0.35.0

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

func (*AdminSSHKeyInitParameters) DeepCopyInto added in v0.35.0

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

type AdminSSHKeyObservation

type AdminSSHKeyObservation struct {

	// The Public Key which should be used for authentication, which needs to be at least 2048-bit and in ssh-rsa format. Changing this forces a new resource to be created.
	PublicKey *string `json:"publicKey,omitempty" tf:"public_key,omitempty"`

	// The Username for which this Public SSH Key should be configured. Changing this forces a new resource to be created.
	Username *string `json:"username,omitempty" tf:"username,omitempty"`
}

func (*AdminSSHKeyObservation) DeepCopy

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

func (*AdminSSHKeyObservation) DeepCopyInto

func (in *AdminSSHKeyObservation) DeepCopyInto(out *AdminSSHKeyObservation)

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

type AdminSSHKeyParameters

type AdminSSHKeyParameters struct {

	// The Public Key which should be used for authentication, which needs to be at least 2048-bit and in ssh-rsa format. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	PublicKey *string `json:"publicKey" tf:"public_key,omitempty"`

	// The Username for which this Public SSH Key should be configured. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	Username *string `json:"username" tf:"username,omitempty"`
}

func (*AdminSSHKeyParameters) DeepCopy

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

func (*AdminSSHKeyParameters) DeepCopyInto

func (in *AdminSSHKeyParameters) DeepCopyInto(out *AdminSSHKeyParameters)

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

type AutomaticInstanceRepairInitParameters added in v0.35.0

type AutomaticInstanceRepairInitParameters struct {

	// Should the automatic instance repair be enabled on this Virtual Machine Scale Set?
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// Amount of time (in minutes, between 30 and 90) for which automatic repairs will be delayed. The grace period starts right after the VM is found unhealthy. The time duration should be specified in ISO 8601 format. Defaults to PT30M.
	GracePeriod *string `json:"gracePeriod,omitempty" tf:"grace_period,omitempty"`
}

func (*AutomaticInstanceRepairInitParameters) DeepCopy added in v0.35.0

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

func (*AutomaticInstanceRepairInitParameters) DeepCopyInto added in v0.35.0

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

type AutomaticInstanceRepairObservation

type AutomaticInstanceRepairObservation struct {

	// Should the automatic instance repair be enabled on this Virtual Machine Scale Set?
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// Amount of time (in minutes, between 30 and 90) for which automatic repairs will be delayed. The grace period starts right after the VM is found unhealthy. The time duration should be specified in ISO 8601 format. Defaults to PT30M.
	GracePeriod *string `json:"gracePeriod,omitempty" tf:"grace_period,omitempty"`
}

func (*AutomaticInstanceRepairObservation) DeepCopy

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

func (*AutomaticInstanceRepairObservation) DeepCopyInto

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

type AutomaticInstanceRepairParameters

type AutomaticInstanceRepairParameters struct {

	// Should the automatic instance repair be enabled on this Virtual Machine Scale Set?
	// +kubebuilder:validation:Optional
	Enabled *bool `json:"enabled" tf:"enabled,omitempty"`

	// Amount of time (in minutes, between 30 and 90) for which automatic repairs will be delayed. The grace period starts right after the VM is found unhealthy. The time duration should be specified in ISO 8601 format. Defaults to PT30M.
	// +kubebuilder:validation:Optional
	GracePeriod *string `json:"gracePeriod,omitempty" tf:"grace_period,omitempty"`
}

func (*AutomaticInstanceRepairParameters) DeepCopy

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

func (*AutomaticInstanceRepairParameters) DeepCopyInto

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

type AutomaticOsUpgradePolicyInitParameters added in v0.35.0

type AutomaticOsUpgradePolicyInitParameters struct {

	// Should automatic rollbacks be disabled?
	DisableAutomaticRollback *bool `json:"disableAutomaticRollback,omitempty" tf:"disable_automatic_rollback,omitempty"`

	// Should OS Upgrades automatically be applied to Scale Set instances in a rolling fashion when a newer version of the OS Image becomes available?
	EnableAutomaticOsUpgrade *bool `json:"enableAutomaticOsUpgrade,omitempty" tf:"enable_automatic_os_upgrade,omitempty"`
}

func (*AutomaticOsUpgradePolicyInitParameters) DeepCopy added in v0.35.0

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

func (*AutomaticOsUpgradePolicyInitParameters) DeepCopyInto added in v0.35.0

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

type AutomaticOsUpgradePolicyObservation

type AutomaticOsUpgradePolicyObservation struct {

	// Should automatic rollbacks be disabled?
	DisableAutomaticRollback *bool `json:"disableAutomaticRollback,omitempty" tf:"disable_automatic_rollback,omitempty"`

	// Should OS Upgrades automatically be applied to Scale Set instances in a rolling fashion when a newer version of the OS Image becomes available?
	EnableAutomaticOsUpgrade *bool `json:"enableAutomaticOsUpgrade,omitempty" tf:"enable_automatic_os_upgrade,omitempty"`
}

func (*AutomaticOsUpgradePolicyObservation) DeepCopy

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

func (*AutomaticOsUpgradePolicyObservation) DeepCopyInto

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

type AutomaticOsUpgradePolicyParameters

type AutomaticOsUpgradePolicyParameters struct {

	// Should automatic rollbacks be disabled?
	// +kubebuilder:validation:Optional
	DisableAutomaticRollback *bool `json:"disableAutomaticRollback" tf:"disable_automatic_rollback,omitempty"`

	// Should OS Upgrades automatically be applied to Scale Set instances in a rolling fashion when a newer version of the OS Image becomes available?
	// +kubebuilder:validation:Optional
	EnableAutomaticOsUpgrade *bool `json:"enableAutomaticOsUpgrade" tf:"enable_automatic_os_upgrade,omitempty"`
}

func (*AutomaticOsUpgradePolicyParameters) DeepCopy

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

func (*AutomaticOsUpgradePolicyParameters) DeepCopyInto

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

type AvailabilitySet

type AvailabilitySet 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   AvailabilitySetSpec   `json:"spec"`
	Status AvailabilitySetStatus `json:"status,omitempty"`
}

AvailabilitySet is the Schema for the AvailabilitySets API. Manages an Availability Set for Virtual Machines. +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 (*AvailabilitySet) DeepCopy

func (in *AvailabilitySet) DeepCopy() *AvailabilitySet

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

func (*AvailabilitySet) DeepCopyInto

func (in *AvailabilitySet) DeepCopyInto(out *AvailabilitySet)

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

func (*AvailabilitySet) DeepCopyObject

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

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

func (*AvailabilitySet) GetCondition

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

GetCondition of this AvailabilitySet.

func (*AvailabilitySet) GetConnectionDetailsMapping

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

GetConnectionDetailsMapping for this AvailabilitySet

func (*AvailabilitySet) GetDeletionPolicy

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

GetDeletionPolicy of this AvailabilitySet.

func (*AvailabilitySet) GetID

func (tr *AvailabilitySet) GetID() string

GetID returns ID of underlying Terraform resource of this AvailabilitySet

func (*AvailabilitySet) GetInitParameters added in v0.35.0

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

GetInitParameters of this AvailabilitySet

func (*AvailabilitySet) GetManagementPolicies added in v0.35.0

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

GetManagementPolicies of this AvailabilitySet.

func (*AvailabilitySet) GetMergedParameters added in v0.40.0

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

GetInitParameters of this AvailabilitySet

func (*AvailabilitySet) GetObservation

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

GetObservation of this AvailabilitySet

func (*AvailabilitySet) GetParameters

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

GetParameters of this AvailabilitySet

func (*AvailabilitySet) GetProviderConfigReference

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

GetProviderConfigReference of this AvailabilitySet.

func (*AvailabilitySet) GetPublishConnectionDetailsTo

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

GetPublishConnectionDetailsTo of this AvailabilitySet.

func (*AvailabilitySet) GetTerraformResourceType

func (mg *AvailabilitySet) GetTerraformResourceType() string

GetTerraformResourceType returns Terraform resource type for this AvailabilitySet

func (*AvailabilitySet) GetTerraformSchemaVersion

func (tr *AvailabilitySet) GetTerraformSchemaVersion() int

GetTerraformSchemaVersion returns the associated Terraform schema version

func (*AvailabilitySet) GetWriteConnectionSecretToReference

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

GetWriteConnectionSecretToReference of this AvailabilitySet.

func (*AvailabilitySet) Hub added in v0.42.1

func (tr *AvailabilitySet) Hub()

Hub marks this type as a conversion hub.

func (*AvailabilitySet) LateInitialize

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

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

func (*AvailabilitySet) ResolveReferences

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

func (*AvailabilitySet) SetConditions

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

SetConditions of this AvailabilitySet.

func (*AvailabilitySet) SetDeletionPolicy

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

SetDeletionPolicy of this AvailabilitySet.

func (*AvailabilitySet) SetManagementPolicies added in v0.35.0

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

SetManagementPolicies of this AvailabilitySet.

func (*AvailabilitySet) SetObservation

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

SetObservation for this AvailabilitySet

func (*AvailabilitySet) SetParameters

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

SetParameters for this AvailabilitySet

func (*AvailabilitySet) SetProviderConfigReference

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

SetProviderConfigReference of this AvailabilitySet.

func (*AvailabilitySet) SetPublishConnectionDetailsTo

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

SetPublishConnectionDetailsTo of this AvailabilitySet.

func (*AvailabilitySet) SetWriteConnectionSecretToReference

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

SetWriteConnectionSecretToReference of this AvailabilitySet.

type AvailabilitySetInitParameters added in v0.35.0

type AvailabilitySetInitParameters struct {

	// 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"`

	// Specifies whether the availability set is managed or not. Possible values are true (to specify aligned) or false (to specify classic). Default is true. Changing this forces a new resource to be created.
	Managed *bool `json:"managed,omitempty" tf:"managed,omitempty"`

	// Specifies the number of fault domains that are used. Defaults to 3. Changing this forces a new resource to be created.
	PlatformFaultDomainCount *float64 `json:"platformFaultDomainCount,omitempty" tf:"platform_fault_domain_count,omitempty"`

	// Specifies the number of update domains that are used. Defaults to 5. Changing this forces a new resource to be created.
	PlatformUpdateDomainCount *float64 `json:"platformUpdateDomainCount,omitempty" tf:"platform_update_domain_count,omitempty"`

	// The ID of the Proximity Placement Group to which this Virtual Machine should be assigned. Changing this forces a new resource to be created.
	ProximityPlacementGroupID *string `json:"proximityPlacementGroupId,omitempty" tf:"proximity_placement_group_id,omitempty"`

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

func (*AvailabilitySetInitParameters) DeepCopy added in v0.35.0

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

func (*AvailabilitySetInitParameters) DeepCopyInto added in v0.35.0

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

type AvailabilitySetList

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

AvailabilitySetList contains a list of AvailabilitySets

func (*AvailabilitySetList) DeepCopy

func (in *AvailabilitySetList) DeepCopy() *AvailabilitySetList

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

func (*AvailabilitySetList) DeepCopyInto

func (in *AvailabilitySetList) DeepCopyInto(out *AvailabilitySetList)

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

func (*AvailabilitySetList) DeepCopyObject

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

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

func (*AvailabilitySetList) GetItems

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

GetItems of this AvailabilitySetList.

type AvailabilitySetObservation

type AvailabilitySetObservation struct {

	// The ID of the Availability Set.
	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"`

	// Specifies whether the availability set is managed or not. Possible values are true (to specify aligned) or false (to specify classic). Default is true. Changing this forces a new resource to be created.
	Managed *bool `json:"managed,omitempty" tf:"managed,omitempty"`

	// Specifies the number of fault domains that are used. Defaults to 3. Changing this forces a new resource to be created.
	PlatformFaultDomainCount *float64 `json:"platformFaultDomainCount,omitempty" tf:"platform_fault_domain_count,omitempty"`

	// Specifies the number of update domains that are used. Defaults to 5. Changing this forces a new resource to be created.
	PlatformUpdateDomainCount *float64 `json:"platformUpdateDomainCount,omitempty" tf:"platform_update_domain_count,omitempty"`

	// The ID of the Proximity Placement Group to which this Virtual Machine should be assigned. Changing this forces a new resource to be created.
	ProximityPlacementGroupID *string `json:"proximityPlacementGroupId,omitempty" tf:"proximity_placement_group_id,omitempty"`

	// The name of the resource group in which to create the availability set. 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 (*AvailabilitySetObservation) DeepCopy

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

func (*AvailabilitySetObservation) DeepCopyInto

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

type AvailabilitySetParameters

type AvailabilitySetParameters struct {

	// 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"`

	// Specifies whether the availability set is managed or not. Possible values are true (to specify aligned) or false (to specify classic). Default is true. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	Managed *bool `json:"managed,omitempty" tf:"managed,omitempty"`

	// Specifies the number of fault domains that are used. Defaults to 3. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	PlatformFaultDomainCount *float64 `json:"platformFaultDomainCount,omitempty" tf:"platform_fault_domain_count,omitempty"`

	// Specifies the number of update domains that are used. Defaults to 5. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	PlatformUpdateDomainCount *float64 `json:"platformUpdateDomainCount,omitempty" tf:"platform_update_domain_count,omitempty"`

	// The ID of the Proximity Placement Group to which this Virtual Machine should be assigned. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	ProximityPlacementGroupID *string `json:"proximityPlacementGroupId,omitempty" tf:"proximity_placement_group_id,omitempty"`

	// The name of the resource group in which to create the availability set. 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 (*AvailabilitySetParameters) DeepCopy

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

func (*AvailabilitySetParameters) DeepCopyInto

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

type AvailabilitySetSpec

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

AvailabilitySetSpec defines the desired state of AvailabilitySet

func (*AvailabilitySetSpec) DeepCopy

func (in *AvailabilitySetSpec) DeepCopy() *AvailabilitySetSpec

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

func (*AvailabilitySetSpec) DeepCopyInto

func (in *AvailabilitySetSpec) DeepCopyInto(out *AvailabilitySetSpec)

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

type AvailabilitySetStatus

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

AvailabilitySetStatus defines the observed state of AvailabilitySet.

func (*AvailabilitySetStatus) DeepCopy

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

func (*AvailabilitySetStatus) DeepCopyInto

func (in *AvailabilitySetStatus) DeepCopyInto(out *AvailabilitySetStatus)

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

type BootDiagnosticsInitParameters added in v0.35.0

type BootDiagnosticsInitParameters struct {

	// The Primary/Secondary Endpoint for the Azure Storage Account which should be used to store Boot Diagnostics, including Console Output and Screenshots from the Hypervisor.
	StorageAccountURI *string `json:"storageAccountUri,omitempty" tf:"storage_account_uri,omitempty"`
}

func (*BootDiagnosticsInitParameters) DeepCopy added in v0.35.0

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

func (*BootDiagnosticsInitParameters) DeepCopyInto added in v0.35.0

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

type BootDiagnosticsObservation

type BootDiagnosticsObservation struct {

	// The Primary/Secondary Endpoint for the Azure Storage Account which should be used to store Boot Diagnostics, including Console Output and Screenshots from the Hypervisor.
	StorageAccountURI *string `json:"storageAccountUri,omitempty" tf:"storage_account_uri,omitempty"`
}

func (*BootDiagnosticsObservation) DeepCopy

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

func (*BootDiagnosticsObservation) DeepCopyInto

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

type BootDiagnosticsParameters

type BootDiagnosticsParameters struct {

	// The Primary/Secondary Endpoint for the Azure Storage Account which should be used to store Boot Diagnostics, including Console Output and Screenshots from the Hypervisor.
	// +kubebuilder:validation:Optional
	StorageAccountURI *string `json:"storageAccountUri,omitempty" tf:"storage_account_uri,omitempty"`
}

func (*BootDiagnosticsParameters) DeepCopy

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

func (*BootDiagnosticsParameters) DeepCopyInto

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

type CapacityReservation added in v0.28.0

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

CapacityReservation is the Schema for the CapacityReservations API. Manages a Capacity Reservation within a Capacity Reservation Group. +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 (*CapacityReservation) DeepCopy added in v0.28.0

func (in *CapacityReservation) DeepCopy() *CapacityReservation

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

func (*CapacityReservation) DeepCopyInto added in v0.28.0

func (in *CapacityReservation) DeepCopyInto(out *CapacityReservation)

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

func (*CapacityReservation) DeepCopyObject added in v0.28.0

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

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

func (*CapacityReservation) GetCondition added in v0.28.0

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

GetCondition of this CapacityReservation.

func (*CapacityReservation) GetConnectionDetailsMapping added in v0.28.0

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

GetConnectionDetailsMapping for this CapacityReservation

func (*CapacityReservation) GetDeletionPolicy added in v0.28.0

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

GetDeletionPolicy of this CapacityReservation.

func (*CapacityReservation) GetID added in v0.28.0

func (tr *CapacityReservation) GetID() string

GetID returns ID of underlying Terraform resource of this CapacityReservation

func (*CapacityReservation) GetInitParameters added in v0.35.0

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

GetInitParameters of this CapacityReservation

func (*CapacityReservation) GetManagementPolicies added in v0.35.0

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

GetManagementPolicies of this CapacityReservation.

func (*CapacityReservation) GetMergedParameters added in v0.40.0

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

GetInitParameters of this CapacityReservation

func (*CapacityReservation) GetObservation added in v0.28.0

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

GetObservation of this CapacityReservation

func (*CapacityReservation) GetParameters added in v0.28.0

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

GetParameters of this CapacityReservation

func (*CapacityReservation) GetProviderConfigReference added in v0.28.0

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

GetProviderConfigReference of this CapacityReservation.

func (*CapacityReservation) GetPublishConnectionDetailsTo added in v0.28.0

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

GetPublishConnectionDetailsTo of this CapacityReservation.

func (*CapacityReservation) GetTerraformResourceType added in v0.28.0

func (mg *CapacityReservation) GetTerraformResourceType() string

GetTerraformResourceType returns Terraform resource type for this CapacityReservation

func (*CapacityReservation) GetTerraformSchemaVersion added in v0.28.0

func (tr *CapacityReservation) GetTerraformSchemaVersion() int

GetTerraformSchemaVersion returns the associated Terraform schema version

func (*CapacityReservation) GetWriteConnectionSecretToReference added in v0.28.0

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

GetWriteConnectionSecretToReference of this CapacityReservation.

func (*CapacityReservation) Hub added in v0.42.1

func (tr *CapacityReservation) Hub()

Hub marks this type as a conversion hub.

func (*CapacityReservation) LateInitialize added in v0.28.0

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

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

func (*CapacityReservation) ResolveReferences added in v0.28.0

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

ResolveReferences of this CapacityReservation.

func (*CapacityReservation) SetConditions added in v0.28.0

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

SetConditions of this CapacityReservation.

func (*CapacityReservation) SetDeletionPolicy added in v0.28.0

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

SetDeletionPolicy of this CapacityReservation.

func (*CapacityReservation) SetManagementPolicies added in v0.35.0

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

SetManagementPolicies of this CapacityReservation.

func (*CapacityReservation) SetObservation added in v0.28.0

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

SetObservation for this CapacityReservation

func (*CapacityReservation) SetParameters added in v0.28.0

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

SetParameters for this CapacityReservation

func (*CapacityReservation) SetProviderConfigReference added in v0.28.0

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

SetProviderConfigReference of this CapacityReservation.

func (*CapacityReservation) SetPublishConnectionDetailsTo added in v0.28.0

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

SetPublishConnectionDetailsTo of this CapacityReservation.

func (*CapacityReservation) SetWriteConnectionSecretToReference added in v0.28.0

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

SetWriteConnectionSecretToReference of this CapacityReservation.

type CapacityReservationGroup added in v0.28.0

type CapacityReservationGroup 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   CapacityReservationGroupSpec   `json:"spec"`
	Status CapacityReservationGroupStatus `json:"status,omitempty"`
}

CapacityReservationGroup is the Schema for the CapacityReservationGroups API. Manages a Capacity Reservation Group. +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 (*CapacityReservationGroup) DeepCopy added in v0.28.0

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

func (*CapacityReservationGroup) DeepCopyInto added in v0.28.0

func (in *CapacityReservationGroup) DeepCopyInto(out *CapacityReservationGroup)

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

func (*CapacityReservationGroup) DeepCopyObject added in v0.28.0

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

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

func (*CapacityReservationGroup) GetCondition added in v0.28.0

GetCondition of this CapacityReservationGroup.

func (*CapacityReservationGroup) GetConnectionDetailsMapping added in v0.28.0

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

GetConnectionDetailsMapping for this CapacityReservationGroup

func (*CapacityReservationGroup) GetDeletionPolicy added in v0.28.0

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

GetDeletionPolicy of this CapacityReservationGroup.

func (*CapacityReservationGroup) GetID added in v0.28.0

func (tr *CapacityReservationGroup) GetID() string

GetID returns ID of underlying Terraform resource of this CapacityReservationGroup

func (*CapacityReservationGroup) GetInitParameters added in v0.35.0

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

GetInitParameters of this CapacityReservationGroup

func (*CapacityReservationGroup) GetManagementPolicies added in v0.35.0

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

GetManagementPolicies of this CapacityReservationGroup.

func (*CapacityReservationGroup) GetMergedParameters added in v0.40.0

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

GetInitParameters of this CapacityReservationGroup

func (*CapacityReservationGroup) GetObservation added in v0.28.0

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

GetObservation of this CapacityReservationGroup

func (*CapacityReservationGroup) GetParameters added in v0.28.0

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

GetParameters of this CapacityReservationGroup

func (*CapacityReservationGroup) GetProviderConfigReference added in v0.28.0

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

GetProviderConfigReference of this CapacityReservationGroup.

func (*CapacityReservationGroup) GetPublishConnectionDetailsTo added in v0.28.0

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

GetPublishConnectionDetailsTo of this CapacityReservationGroup.

func (*CapacityReservationGroup) GetTerraformResourceType added in v0.28.0

func (mg *CapacityReservationGroup) GetTerraformResourceType() string

GetTerraformResourceType returns Terraform resource type for this CapacityReservationGroup

func (*CapacityReservationGroup) GetTerraformSchemaVersion added in v0.28.0

func (tr *CapacityReservationGroup) GetTerraformSchemaVersion() int

GetTerraformSchemaVersion returns the associated Terraform schema version

func (*CapacityReservationGroup) GetWriteConnectionSecretToReference added in v0.28.0

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

GetWriteConnectionSecretToReference of this CapacityReservationGroup.

func (*CapacityReservationGroup) Hub added in v0.42.1

func (tr *CapacityReservationGroup) Hub()

Hub marks this type as a conversion hub.

func (*CapacityReservationGroup) LateInitialize added in v0.28.0

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

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

func (*CapacityReservationGroup) ResolveReferences added in v0.28.0

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

ResolveReferences of this CapacityReservationGroup.

func (*CapacityReservationGroup) SetConditions added in v0.28.0

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

SetConditions of this CapacityReservationGroup.

func (*CapacityReservationGroup) SetDeletionPolicy added in v0.28.0

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

SetDeletionPolicy of this CapacityReservationGroup.

func (*CapacityReservationGroup) SetManagementPolicies added in v0.35.0

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

SetManagementPolicies of this CapacityReservationGroup.

func (*CapacityReservationGroup) SetObservation added in v0.28.0

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

SetObservation for this CapacityReservationGroup

func (*CapacityReservationGroup) SetParameters added in v0.28.0

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

SetParameters for this CapacityReservationGroup

func (*CapacityReservationGroup) SetProviderConfigReference added in v0.28.0

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

SetProviderConfigReference of this CapacityReservationGroup.

func (*CapacityReservationGroup) SetPublishConnectionDetailsTo added in v0.28.0

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

SetPublishConnectionDetailsTo of this CapacityReservationGroup.

func (*CapacityReservationGroup) SetWriteConnectionSecretToReference added in v0.28.0

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

SetWriteConnectionSecretToReference of this CapacityReservationGroup.

type CapacityReservationGroupInitParameters added in v0.35.0

type CapacityReservationGroupInitParameters struct {

	// The Azure location where the Capacity Reservation Group 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"`

	// Specifies a list of Availability Zones for this Capacity Reservation Group. Changing this forces a new resource to be created.
	// +listType=set
	Zones []*string `json:"zones,omitempty" tf:"zones,omitempty"`
}

func (*CapacityReservationGroupInitParameters) DeepCopy added in v0.35.0

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

func (*CapacityReservationGroupInitParameters) DeepCopyInto added in v0.35.0

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

type CapacityReservationGroupList added in v0.28.0

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

CapacityReservationGroupList contains a list of CapacityReservationGroups

func (*CapacityReservationGroupList) DeepCopy added in v0.28.0

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

func (*CapacityReservationGroupList) DeepCopyInto added in v0.28.0

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

func (*CapacityReservationGroupList) DeepCopyObject added in v0.28.0

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

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

func (*CapacityReservationGroupList) GetItems added in v0.28.0

GetItems of this CapacityReservationGroupList.

type CapacityReservationGroupObservation added in v0.28.0

type CapacityReservationGroupObservation struct {

	// The ID of the Capacity Reservation Group.
	ID *string `json:"id,omitempty" tf:"id,omitempty"`

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

	// Specifies the name of the resource group the Capacity Reservation Group is located in. 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"`

	// Specifies a list of Availability Zones for this Capacity Reservation Group. Changing this forces a new resource to be created.
	// +listType=set
	Zones []*string `json:"zones,omitempty" tf:"zones,omitempty"`
}

func (*CapacityReservationGroupObservation) DeepCopy added in v0.28.0

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

func (*CapacityReservationGroupObservation) DeepCopyInto added in v0.28.0

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

type CapacityReservationGroupParameters added in v0.28.0

type CapacityReservationGroupParameters struct {

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

	// Specifies the name of the resource group the Capacity Reservation Group is located in. 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"`

	// Specifies a list of Availability Zones for this Capacity Reservation Group. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	// +listType=set
	Zones []*string `json:"zones,omitempty" tf:"zones,omitempty"`
}

func (*CapacityReservationGroupParameters) DeepCopy added in v0.28.0

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

func (*CapacityReservationGroupParameters) DeepCopyInto added in v0.28.0

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

type CapacityReservationGroupSpec added in v0.28.0

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

CapacityReservationGroupSpec defines the desired state of CapacityReservationGroup

func (*CapacityReservationGroupSpec) DeepCopy added in v0.28.0

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

func (*CapacityReservationGroupSpec) DeepCopyInto added in v0.28.0

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

type CapacityReservationGroupStatus added in v0.28.0

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

CapacityReservationGroupStatus defines the observed state of CapacityReservationGroup.

func (*CapacityReservationGroupStatus) DeepCopy added in v0.28.0

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

func (*CapacityReservationGroupStatus) DeepCopyInto added in v0.28.0

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

type CapacityReservationInitParameters added in v0.35.0

type CapacityReservationInitParameters struct {

	// A sku block as defined below.
	Sku []SkuInitParameters `json:"sku,omitempty" tf:"sku,omitempty"`

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

	// Specifies the Availability Zone for this Capacity Reservation. Changing this forces a new resource to be created.
	Zone *string `json:"zone,omitempty" tf:"zone,omitempty"`
}

func (*CapacityReservationInitParameters) DeepCopy added in v0.35.0

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

func (*CapacityReservationInitParameters) DeepCopyInto added in v0.35.0

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

type CapacityReservationList added in v0.28.0

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

CapacityReservationList contains a list of CapacityReservations

func (*CapacityReservationList) DeepCopy added in v0.28.0

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

func (*CapacityReservationList) DeepCopyInto added in v0.28.0

func (in *CapacityReservationList) DeepCopyInto(out *CapacityReservationList)

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

func (*CapacityReservationList) DeepCopyObject added in v0.28.0

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

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

func (*CapacityReservationList) GetItems added in v0.28.0

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

GetItems of this CapacityReservationList.

type CapacityReservationObservation added in v0.28.0

type CapacityReservationObservation struct {

	// The ID of the Capacity Reservation Group where the Capacity Reservation exists. Changing this forces a new resource to be created.
	CapacityReservationGroupID *string `json:"capacityReservationGroupId,omitempty" tf:"capacity_reservation_group_id,omitempty"`

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

	// A sku block as defined below.
	Sku []SkuObservation `json:"sku,omitempty" tf:"sku,omitempty"`

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

	// Specifies the Availability Zone for this Capacity Reservation. Changing this forces a new resource to be created.
	Zone *string `json:"zone,omitempty" tf:"zone,omitempty"`
}

func (*CapacityReservationObservation) DeepCopy added in v0.28.0

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

func (*CapacityReservationObservation) DeepCopyInto added in v0.28.0

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

type CapacityReservationParameters added in v0.28.0

type CapacityReservationParameters struct {

	// The ID of the Capacity Reservation Group where the Capacity Reservation exists. Changing this forces a new resource to be created.
	// +crossplane:generate:reference:type=github.com/upbound/provider-azure/apis/compute/v1beta1.CapacityReservationGroup
	// +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractResourceID()
	// +kubebuilder:validation:Optional
	CapacityReservationGroupID *string `json:"capacityReservationGroupId,omitempty" tf:"capacity_reservation_group_id,omitempty"`

	// Reference to a CapacityReservationGroup in compute to populate capacityReservationGroupId.
	// +kubebuilder:validation:Optional
	CapacityReservationGroupIDRef *v1.Reference `json:"capacityReservationGroupIdRef,omitempty" tf:"-"`

	// Selector for a CapacityReservationGroup in compute to populate capacityReservationGroupId.
	// +kubebuilder:validation:Optional
	CapacityReservationGroupIDSelector *v1.Selector `json:"capacityReservationGroupIdSelector,omitempty" tf:"-"`

	// A sku block as defined below.
	// +kubebuilder:validation:Optional
	Sku []SkuParameters `json:"sku,omitempty" tf:"sku,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"`

	// Specifies the Availability Zone for this Capacity Reservation. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	Zone *string `json:"zone,omitempty" tf:"zone,omitempty"`
}

func (*CapacityReservationParameters) DeepCopy added in v0.28.0

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

func (*CapacityReservationParameters) DeepCopyInto added in v0.28.0

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

type CapacityReservationSpec added in v0.28.0

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

CapacityReservationSpec defines the desired state of CapacityReservation

func (*CapacityReservationSpec) DeepCopy added in v0.28.0

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

func (*CapacityReservationSpec) DeepCopyInto added in v0.28.0

func (in *CapacityReservationSpec) DeepCopyInto(out *CapacityReservationSpec)

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

type CapacityReservationStatus added in v0.28.0

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

CapacityReservationStatus defines the observed state of CapacityReservation.

func (*CapacityReservationStatus) DeepCopy added in v0.28.0

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

func (*CapacityReservationStatus) DeepCopyInto added in v0.28.0

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

type CertificateInitParameters added in v0.35.0

type CertificateInitParameters struct {

	// The Secret URL of a Key Vault Certificate.
	URL *string `json:"url,omitempty" tf:"url,omitempty"`
}

func (*CertificateInitParameters) DeepCopy added in v0.35.0

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

func (*CertificateInitParameters) DeepCopyInto added in v0.35.0

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

type CertificateObservation

type CertificateObservation struct {

	// The Secret URL of a Key Vault Certificate.
	URL *string `json:"url,omitempty" tf:"url,omitempty"`
}

func (*CertificateObservation) DeepCopy

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

func (*CertificateObservation) DeepCopyInto

func (in *CertificateObservation) DeepCopyInto(out *CertificateObservation)

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

type CertificateParameters

type CertificateParameters struct {

	// The Secret URL of a Key Vault Certificate.
	// +kubebuilder:validation:Optional
	URL *string `json:"url" tf:"url,omitempty"`
}

func (*CertificateParameters) DeepCopy

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

func (*CertificateParameters) DeepCopyInto

func (in *CertificateParameters) DeepCopyInto(out *CertificateParameters)

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

type CommunityGalleryInitParameters added in v1.0.0

type CommunityGalleryInitParameters struct {

	// The End User Licence Agreement for the Shared Image Gallery. Changing this forces a new resource to be created.
	Eula *string `json:"eula,omitempty" tf:"eula,omitempty"`

	// Prefix of the community public name for the Shared Image Gallery. Changing this forces a new resource to be created.
	Prefix *string `json:"prefix,omitempty" tf:"prefix,omitempty"`

	// Email of the publisher for the Shared Image Gallery. Changing this forces a new resource to be created.
	PublisherEmail *string `json:"publisherEmail,omitempty" tf:"publisher_email,omitempty"`

	// URI of the publisher for the Shared Image Gallery. Changing this forces a new resource to be created.
	PublisherURI *string `json:"publisherUri,omitempty" tf:"publisher_uri,omitempty"`
}

func (*CommunityGalleryInitParameters) DeepCopy added in v1.0.0

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

func (*CommunityGalleryInitParameters) DeepCopyInto added in v1.0.0

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

type CommunityGalleryObservation added in v1.0.0

type CommunityGalleryObservation struct {

	// The End User Licence Agreement for the Shared Image Gallery. Changing this forces a new resource to be created.
	Eula *string `json:"eula,omitempty" tf:"eula,omitempty"`

	// Specifies the name of the Shared Image Gallery. Changing this forces a new resource to be created.
	Name *string `json:"name,omitempty" tf:"name,omitempty"`

	// Prefix of the community public name for the Shared Image Gallery. Changing this forces a new resource to be created.
	Prefix *string `json:"prefix,omitempty" tf:"prefix,omitempty"`

	// Email of the publisher for the Shared Image Gallery. Changing this forces a new resource to be created.
	PublisherEmail *string `json:"publisherEmail,omitempty" tf:"publisher_email,omitempty"`

	// URI of the publisher for the Shared Image Gallery. Changing this forces a new resource to be created.
	PublisherURI *string `json:"publisherUri,omitempty" tf:"publisher_uri,omitempty"`
}

func (*CommunityGalleryObservation) DeepCopy added in v1.0.0

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

func (*CommunityGalleryObservation) DeepCopyInto added in v1.0.0

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

type CommunityGalleryParameters added in v1.0.0

type CommunityGalleryParameters struct {

	// The End User Licence Agreement for the Shared Image Gallery. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	Eula *string `json:"eula" tf:"eula,omitempty"`

	// Prefix of the community public name for the Shared Image Gallery. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	Prefix *string `json:"prefix" tf:"prefix,omitempty"`

	// Email of the publisher for the Shared Image Gallery. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	PublisherEmail *string `json:"publisherEmail" tf:"publisher_email,omitempty"`

	// URI of the publisher for the Shared Image Gallery. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	PublisherURI *string `json:"publisherUri" tf:"publisher_uri,omitempty"`
}

func (*CommunityGalleryParameters) DeepCopy added in v1.0.0

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

func (*CommunityGalleryParameters) DeepCopyInto added in v1.0.0

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

type DataDiskInitParameters added in v0.35.0

type DataDiskInitParameters struct {

	// Specifies the URI in Azure storage of the blob that you want to use to create the image.
	BlobURI *string `json:"blobUri,omitempty" tf:"blob_uri,omitempty"`

	// Specifies the caching mode as ReadWrite, ReadOnly, or None. Defaults to None.
	Caching *string `json:"caching,omitempty" tf:"caching,omitempty"`

	// Specifies the logical unit number of the data disk.
	Lun *float64 `json:"lun,omitempty" tf:"lun,omitempty"`

	// Specifies the ID of the managed disk resource that you want to use to create the image. Changing this forces a new resource to be created.
	ManagedDiskID *string `json:"managedDiskId,omitempty" tf:"managed_disk_id,omitempty"`

	// Specifies the size of the image to be created. The target size can't be smaller than the source size.
	SizeGb *float64 `json:"sizeGb,omitempty" tf:"size_gb,omitempty"`
}

func (*DataDiskInitParameters) DeepCopy added in v0.35.0

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

func (*DataDiskInitParameters) DeepCopyInto added in v0.35.0

func (in *DataDiskInitParameters) DeepCopyInto(out *DataDiskInitParameters)

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

type DataDiskObservation

type DataDiskObservation struct {

	// Specifies the URI in Azure storage of the blob that you want to use to create the image.
	BlobURI *string `json:"blobUri,omitempty" tf:"blob_uri,omitempty"`

	// Specifies the caching mode as ReadWrite, ReadOnly, or None. Defaults to None.
	Caching *string `json:"caching,omitempty" tf:"caching,omitempty"`

	// Specifies the logical unit number of the data disk.
	Lun *float64 `json:"lun,omitempty" tf:"lun,omitempty"`

	// Specifies the ID of the managed disk resource that you want to use to create the image. Changing this forces a new resource to be created.
	ManagedDiskID *string `json:"managedDiskId,omitempty" tf:"managed_disk_id,omitempty"`

	// Specifies the size of the image to be created. The target size can't be smaller than the source size.
	SizeGb *float64 `json:"sizeGb,omitempty" tf:"size_gb,omitempty"`
}

func (*DataDiskObservation) DeepCopy

func (in *DataDiskObservation) DeepCopy() *DataDiskObservation

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

func (*DataDiskObservation) DeepCopyInto

func (in *DataDiskObservation) DeepCopyInto(out *DataDiskObservation)

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

type DataDiskParameters

type DataDiskParameters struct {

	// Specifies the URI in Azure storage of the blob that you want to use to create the image.
	// +kubebuilder:validation:Optional
	BlobURI *string `json:"blobUri,omitempty" tf:"blob_uri,omitempty"`

	// Specifies the caching mode as ReadWrite, ReadOnly, or None. Defaults to None.
	// +kubebuilder:validation:Optional
	Caching *string `json:"caching,omitempty" tf:"caching,omitempty"`

	// Specifies the logical unit number of the data disk.
	// +kubebuilder:validation:Optional
	Lun *float64 `json:"lun,omitempty" tf:"lun,omitempty"`

	// Specifies the ID of the managed disk resource that you want to use to create the image. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	ManagedDiskID *string `json:"managedDiskId,omitempty" tf:"managed_disk_id,omitempty"`

	// Specifies the size of the image to be created. The target size can't be smaller than the source size.
	// +kubebuilder:validation:Optional
	SizeGb *float64 `json:"sizeGb,omitempty" tf:"size_gb,omitempty"`
}

func (*DataDiskParameters) DeepCopy

func (in *DataDiskParameters) DeepCopy() *DataDiskParameters

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

func (*DataDiskParameters) DeepCopyInto

func (in *DataDiskParameters) DeepCopyInto(out *DataDiskParameters)

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

type DedicatedHost

type DedicatedHost 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.platformFaultDomain) || (has(self.initProvider) && has(self.initProvider.platformFaultDomain))",message="spec.forProvider.platformFaultDomain 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"
	Spec   DedicatedHostSpec   `json:"spec"`
	Status DedicatedHostStatus `json:"status,omitempty"`
}

DedicatedHost is the Schema for the DedicatedHosts API. Manage a Dedicated Host within a Dedicated Host Group. +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 (*DedicatedHost) DeepCopy

func (in *DedicatedHost) DeepCopy() *DedicatedHost

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

func (*DedicatedHost) DeepCopyInto

func (in *DedicatedHost) DeepCopyInto(out *DedicatedHost)

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

func (*DedicatedHost) DeepCopyObject

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

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

func (*DedicatedHost) GetCondition

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

GetCondition of this DedicatedHost.

func (*DedicatedHost) GetConnectionDetailsMapping

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

GetConnectionDetailsMapping for this DedicatedHost

func (*DedicatedHost) GetDeletionPolicy

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

GetDeletionPolicy of this DedicatedHost.

func (*DedicatedHost) GetID

func (tr *DedicatedHost) GetID() string

GetID returns ID of underlying Terraform resource of this DedicatedHost

func (*DedicatedHost) GetInitParameters added in v0.35.0

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

GetInitParameters of this DedicatedHost

func (*DedicatedHost) GetManagementPolicies added in v0.35.0

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

GetManagementPolicies of this DedicatedHost.

func (*DedicatedHost) GetMergedParameters added in v0.40.0

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

GetInitParameters of this DedicatedHost

func (*DedicatedHost) GetObservation

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

GetObservation of this DedicatedHost

func (*DedicatedHost) GetParameters

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

GetParameters of this DedicatedHost

func (*DedicatedHost) GetProviderConfigReference

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

GetProviderConfigReference of this DedicatedHost.

func (*DedicatedHost) GetPublishConnectionDetailsTo

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

GetPublishConnectionDetailsTo of this DedicatedHost.

func (*DedicatedHost) GetTerraformResourceType

func (mg *DedicatedHost) GetTerraformResourceType() string

GetTerraformResourceType returns Terraform resource type for this DedicatedHost

func (*DedicatedHost) GetTerraformSchemaVersion

func (tr *DedicatedHost) GetTerraformSchemaVersion() int

GetTerraformSchemaVersion returns the associated Terraform schema version

func (*DedicatedHost) GetWriteConnectionSecretToReference

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

GetWriteConnectionSecretToReference of this DedicatedHost.

func (*DedicatedHost) Hub added in v0.42.1

func (tr *DedicatedHost) Hub()

Hub marks this type as a conversion hub.

func (*DedicatedHost) LateInitialize

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

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

func (*DedicatedHost) SetConditions

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

SetConditions of this DedicatedHost.

func (*DedicatedHost) SetDeletionPolicy

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

SetDeletionPolicy of this DedicatedHost.

func (*DedicatedHost) SetManagementPolicies added in v0.35.0

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

SetManagementPolicies of this DedicatedHost.

func (*DedicatedHost) SetObservation

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

SetObservation for this DedicatedHost

func (*DedicatedHost) SetParameters

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

SetParameters for this DedicatedHost

func (*DedicatedHost) SetProviderConfigReference

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

SetProviderConfigReference of this DedicatedHost.

func (*DedicatedHost) SetPublishConnectionDetailsTo

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

SetPublishConnectionDetailsTo of this DedicatedHost.

func (*DedicatedHost) SetWriteConnectionSecretToReference

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

SetWriteConnectionSecretToReference of this DedicatedHost.

type DedicatedHostInitParameters added in v0.35.0

type DedicatedHostInitParameters struct {

	// Should the Dedicated Host automatically be replaced in case of a Hardware Failure? Defaults to true.
	AutoReplaceOnFailure *bool `json:"autoReplaceOnFailure,omitempty" tf:"auto_replace_on_failure,omitempty"`

	// Specifies the software license type that will be applied to the VMs deployed on the Dedicated Host. Possible values are None, Windows_Server_Hybrid and Windows_Server_Perpetual. Defaults to None.
	LicenseType *string `json:"licenseType,omitempty" tf:"license_type,omitempty"`

	// Specify 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"`

	// Specify the fault domain of the Dedicated Host Group in which to create the Dedicated Host. Changing this forces a new resource to be created.
	PlatformFaultDomain *float64 `json:"platformFaultDomain,omitempty" tf:"platform_fault_domain,omitempty"`

	// Specify the SKU name of the Dedicated Host. Possible values are DADSv5-Type1, DASv4-Type1, DASv4-Type2, DASv5-Type1, DCSv2-Type1, DDSv4-Type1, DDSv4-Type2, DDSv5-Type1, DSv3-Type1, DSv3-Type2, DSv3-Type3, DSv3-Type4, DSv4-Type1, DSv4-Type2, DSv5-Type1, EADSv5-Type1, EASv4-Type1, EASv4-Type2, EASv5-Type1, EDSv4-Type1, EDSv4-Type2, EDSv5-Type1, ESv3-Type1, ESv3-Type2, ESv3-Type3, ESv3-Type4, ESv4-Type1, ESv4-Type2, ESv5-Type1, FSv2-Type2, FSv2-Type3, FSv2-Type4, FXmds-Type1, LSv2-Type1, LSv3-Type1, MDMSv2MedMem-Type1, MDSv2MedMem-Type1, MMSv2MedMem-Type1, MS-Type1, MSm-Type1, MSmv2-Type1, MSv2-Type1, MSv2MedMem-Type1, NVASv4-Type1 and NVSv3-Type1. Changing this forces a new resource to be created.
	SkuName *string `json:"skuName,omitempty" tf:"sku_name,omitempty"`

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

func (*DedicatedHostInitParameters) DeepCopy added in v0.35.0

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

func (*DedicatedHostInitParameters) DeepCopyInto added in v0.35.0

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

type DedicatedHostList

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

DedicatedHostList contains a list of DedicatedHosts

func (*DedicatedHostList) DeepCopy

func (in *DedicatedHostList) DeepCopy() *DedicatedHostList

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

func (*DedicatedHostList) DeepCopyInto

func (in *DedicatedHostList) DeepCopyInto(out *DedicatedHostList)

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

func (*DedicatedHostList) DeepCopyObject

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

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

func (*DedicatedHostList) GetItems

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

GetItems of this DedicatedHostList.

type DedicatedHostObservation

type DedicatedHostObservation struct {

	// Should the Dedicated Host automatically be replaced in case of a Hardware Failure? Defaults to true.
	AutoReplaceOnFailure *bool `json:"autoReplaceOnFailure,omitempty" tf:"auto_replace_on_failure,omitempty"`

	// Specifies the ID of the Dedicated Host Group where the Dedicated Host should exist. Changing this forces a new resource to be created.
	DedicatedHostGroupID *string `json:"dedicatedHostGroupId,omitempty" tf:"dedicated_host_group_id,omitempty"`

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

	// Specifies the software license type that will be applied to the VMs deployed on the Dedicated Host. Possible values are None, Windows_Server_Hybrid and Windows_Server_Perpetual. Defaults to None.
	LicenseType *string `json:"licenseType,omitempty" tf:"license_type,omitempty"`

	// Specify 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"`

	// Specify the fault domain of the Dedicated Host Group in which to create the Dedicated Host. Changing this forces a new resource to be created.
	PlatformFaultDomain *float64 `json:"platformFaultDomain,omitempty" tf:"platform_fault_domain,omitempty"`

	// Specify the SKU name of the Dedicated Host. Possible values are DADSv5-Type1, DASv4-Type1, DASv4-Type2, DASv5-Type1, DCSv2-Type1, DDSv4-Type1, DDSv4-Type2, DDSv5-Type1, DSv3-Type1, DSv3-Type2, DSv3-Type3, DSv3-Type4, DSv4-Type1, DSv4-Type2, DSv5-Type1, EADSv5-Type1, EASv4-Type1, EASv4-Type2, EASv5-Type1, EDSv4-Type1, EDSv4-Type2, EDSv5-Type1, ESv3-Type1, ESv3-Type2, ESv3-Type3, ESv3-Type4, ESv4-Type1, ESv4-Type2, ESv5-Type1, FSv2-Type2, FSv2-Type3, FSv2-Type4, FXmds-Type1, LSv2-Type1, LSv3-Type1, MDMSv2MedMem-Type1, MDSv2MedMem-Type1, MMSv2MedMem-Type1, MS-Type1, MSm-Type1, MSmv2-Type1, MSv2-Type1, MSv2MedMem-Type1, NVASv4-Type1 and NVSv3-Type1. Changing this forces a new resource to be created.
	SkuName *string `json:"skuName,omitempty" tf:"sku_name,omitempty"`

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

func (*DedicatedHostObservation) DeepCopy

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

func (*DedicatedHostObservation) DeepCopyInto

func (in *DedicatedHostObservation) DeepCopyInto(out *DedicatedHostObservation)

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

type DedicatedHostParameters

type DedicatedHostParameters struct {

	// Should the Dedicated Host automatically be replaced in case of a Hardware Failure? Defaults to true.
	// +kubebuilder:validation:Optional
	AutoReplaceOnFailure *bool `json:"autoReplaceOnFailure,omitempty" tf:"auto_replace_on_failure,omitempty"`

	// Specifies the ID of the Dedicated Host Group where the Dedicated Host should exist. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Required
	DedicatedHostGroupID *string `json:"dedicatedHostGroupId" tf:"dedicated_host_group_id,omitempty"`

	// Specifies the software license type that will be applied to the VMs deployed on the Dedicated Host. Possible values are None, Windows_Server_Hybrid and Windows_Server_Perpetual. Defaults to None.
	// +kubebuilder:validation:Optional
	LicenseType *string `json:"licenseType,omitempty" tf:"license_type,omitempty"`

	// Specify 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"`

	// Specify the fault domain of the Dedicated Host Group in which to create the Dedicated Host. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	PlatformFaultDomain *float64 `json:"platformFaultDomain,omitempty" tf:"platform_fault_domain,omitempty"`

	// Specify the SKU name of the Dedicated Host. Possible values are DADSv5-Type1, DASv4-Type1, DASv4-Type2, DASv5-Type1, DCSv2-Type1, DDSv4-Type1, DDSv4-Type2, DDSv5-Type1, DSv3-Type1, DSv3-Type2, DSv3-Type3, DSv3-Type4, DSv4-Type1, DSv4-Type2, DSv5-Type1, EADSv5-Type1, EASv4-Type1, EASv4-Type2, EASv5-Type1, EDSv4-Type1, EDSv4-Type2, EDSv5-Type1, ESv3-Type1, ESv3-Type2, ESv3-Type3, ESv3-Type4, ESv4-Type1, ESv4-Type2, ESv5-Type1, FSv2-Type2, FSv2-Type3, FSv2-Type4, FXmds-Type1, LSv2-Type1, LSv3-Type1, MDMSv2MedMem-Type1, MDSv2MedMem-Type1, MMSv2MedMem-Type1, MS-Type1, MSm-Type1, MSmv2-Type1, MSv2-Type1, MSv2MedMem-Type1, NVASv4-Type1 and NVSv3-Type1. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	SkuName *string `json:"skuName,omitempty" tf:"sku_name,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"`
}

func (*DedicatedHostParameters) DeepCopy

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

func (*DedicatedHostParameters) DeepCopyInto

func (in *DedicatedHostParameters) DeepCopyInto(out *DedicatedHostParameters)

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

type DedicatedHostSpec

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

DedicatedHostSpec defines the desired state of DedicatedHost

func (*DedicatedHostSpec) DeepCopy

func (in *DedicatedHostSpec) DeepCopy() *DedicatedHostSpec

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

func (*DedicatedHostSpec) DeepCopyInto

func (in *DedicatedHostSpec) DeepCopyInto(out *DedicatedHostSpec)

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

type DedicatedHostStatus

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

DedicatedHostStatus defines the observed state of DedicatedHost.

func (*DedicatedHostStatus) DeepCopy

func (in *DedicatedHostStatus) DeepCopy() *DedicatedHostStatus

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

func (*DedicatedHostStatus) DeepCopyInto

func (in *DedicatedHostStatus) DeepCopyInto(out *DedicatedHostStatus)

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

type DiffDiskSettingsInitParameters added in v0.35.0

type DiffDiskSettingsInitParameters struct {

	// Specifies the Ephemeral Disk Settings for the OS Disk. At this time the only possible value is Local. Changing this forces a new resource to be created.
	Option *string `json:"option,omitempty" tf:"option,omitempty"`

	// Specifies where to store the Ephemeral Disk. Possible values are CacheDisk and ResourceDisk. Defaults to CacheDisk. Changing this forces a new resource to be created.
	Placement *string `json:"placement,omitempty" tf:"placement,omitempty"`
}

func (*DiffDiskSettingsInitParameters) DeepCopy added in v0.35.0

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

func (*DiffDiskSettingsInitParameters) DeepCopyInto added in v0.35.0

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

type DiffDiskSettingsObservation

type DiffDiskSettingsObservation struct {

	// Specifies the Ephemeral Disk Settings for the OS Disk. At this time the only possible value is Local. Changing this forces a new resource to be created.
	Option *string `json:"option,omitempty" tf:"option,omitempty"`

	// Specifies where to store the Ephemeral Disk. Possible values are CacheDisk and ResourceDisk. Defaults to CacheDisk. Changing this forces a new resource to be created.
	Placement *string `json:"placement,omitempty" tf:"placement,omitempty"`
}

func (*DiffDiskSettingsObservation) DeepCopy

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

func (*DiffDiskSettingsObservation) DeepCopyInto

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

type DiffDiskSettingsParameters

type DiffDiskSettingsParameters struct {

	// Specifies the Ephemeral Disk Settings for the OS Disk. At this time the only possible value is Local. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	Option *string `json:"option" tf:"option,omitempty"`

	// Specifies where to store the Ephemeral Disk. Possible values are CacheDisk and ResourceDisk. Defaults to CacheDisk. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	Placement *string `json:"placement,omitempty" tf:"placement,omitempty"`
}

func (*DiffDiskSettingsParameters) DeepCopy

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

func (*DiffDiskSettingsParameters) DeepCopyInto

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

type DiskAccess

type DiskAccess 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   DiskAccessSpec   `json:"spec"`
	Status DiskAccessStatus `json:"status,omitempty"`
}

DiskAccess is the Schema for the DiskAccesss API. Manages a Disk Access. +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 (*DiskAccess) DeepCopy

func (in *DiskAccess) DeepCopy() *DiskAccess

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

func (*DiskAccess) DeepCopyInto

func (in *DiskAccess) DeepCopyInto(out *DiskAccess)

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

func (*DiskAccess) DeepCopyObject

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

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

func (*DiskAccess) GetCondition

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

GetCondition of this DiskAccess.

func (*DiskAccess) GetConnectionDetailsMapping

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

GetConnectionDetailsMapping for this DiskAccess

func (*DiskAccess) GetDeletionPolicy

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

GetDeletionPolicy of this DiskAccess.

func (*DiskAccess) GetID

func (tr *DiskAccess) GetID() string

GetID returns ID of underlying Terraform resource of this DiskAccess

func (*DiskAccess) GetInitParameters added in v0.35.0

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

GetInitParameters of this DiskAccess

func (*DiskAccess) GetManagementPolicies added in v0.35.0

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

GetManagementPolicies of this DiskAccess.

func (*DiskAccess) GetMergedParameters added in v0.40.0

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

GetInitParameters of this DiskAccess

func (*DiskAccess) GetObservation

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

GetObservation of this DiskAccess

func (*DiskAccess) GetParameters

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

GetParameters of this DiskAccess

func (*DiskAccess) GetProviderConfigReference

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

GetProviderConfigReference of this DiskAccess.

func (*DiskAccess) GetPublishConnectionDetailsTo

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

GetPublishConnectionDetailsTo of this DiskAccess.

func (*DiskAccess) GetTerraformResourceType

func (mg *DiskAccess) GetTerraformResourceType() string

GetTerraformResourceType returns Terraform resource type for this DiskAccess

func (*DiskAccess) GetTerraformSchemaVersion

func (tr *DiskAccess) GetTerraformSchemaVersion() int

GetTerraformSchemaVersion returns the associated Terraform schema version

func (*DiskAccess) GetWriteConnectionSecretToReference

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

GetWriteConnectionSecretToReference of this DiskAccess.

func (*DiskAccess) Hub added in v0.42.1

func (tr *DiskAccess) Hub()

Hub marks this type as a conversion hub.

func (*DiskAccess) LateInitialize

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

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

func (*DiskAccess) ResolveReferences

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

ResolveReferences of this DiskAccess.

func (*DiskAccess) SetConditions

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

SetConditions of this DiskAccess.

func (*DiskAccess) SetDeletionPolicy

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

SetDeletionPolicy of this DiskAccess.

func (*DiskAccess) SetManagementPolicies added in v0.35.0

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

SetManagementPolicies of this DiskAccess.

func (*DiskAccess) SetObservation

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

SetObservation for this DiskAccess

func (*DiskAccess) SetParameters

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

SetParameters for this DiskAccess

func (*DiskAccess) SetProviderConfigReference

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

SetProviderConfigReference of this DiskAccess.

func (*DiskAccess) SetPublishConnectionDetailsTo

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

SetPublishConnectionDetailsTo of this DiskAccess.

func (*DiskAccess) SetWriteConnectionSecretToReference

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

SetWriteConnectionSecretToReference of this DiskAccess.

type DiskAccessInitParameters added in v0.35.0

type DiskAccessInitParameters struct {

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

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

func (*DiskAccessInitParameters) DeepCopy added in v0.35.0

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

func (*DiskAccessInitParameters) DeepCopyInto added in v0.35.0

func (in *DiskAccessInitParameters) DeepCopyInto(out *DiskAccessInitParameters)

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

type DiskAccessList

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

DiskAccessList contains a list of DiskAccesss

func (*DiskAccessList) DeepCopy

func (in *DiskAccessList) DeepCopy() *DiskAccessList

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

func (*DiskAccessList) DeepCopyInto

func (in *DiskAccessList) DeepCopyInto(out *DiskAccessList)

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

func (*DiskAccessList) DeepCopyObject

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

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

func (*DiskAccessList) GetItems

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

GetItems of this DiskAccessList.

type DiskAccessObservation

type DiskAccessObservation struct {

	// The ID of the Disk Access resource.
	ID *string `json:"id,omitempty" tf:"id,omitempty"`

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

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

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

func (*DiskAccessObservation) DeepCopy

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

func (*DiskAccessObservation) DeepCopyInto

func (in *DiskAccessObservation) DeepCopyInto(out *DiskAccessObservation)

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

type DiskAccessParameters

type DiskAccessParameters struct {

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

	// The name of the Resource Group where the Disk Access should exist. Changing this forces a new Disk Access 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 which should be assigned to the Disk Access.
	// +kubebuilder:validation:Optional
	// +mapType=granular
	Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"`
}

func (*DiskAccessParameters) DeepCopy

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

func (*DiskAccessParameters) DeepCopyInto

func (in *DiskAccessParameters) DeepCopyInto(out *DiskAccessParameters)

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

type DiskAccessSpec

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

DiskAccessSpec defines the desired state of DiskAccess

func (*DiskAccessSpec) DeepCopy

func (in *DiskAccessSpec) DeepCopy() *DiskAccessSpec

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

func (*DiskAccessSpec) DeepCopyInto

func (in *DiskAccessSpec) DeepCopyInto(out *DiskAccessSpec)

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

type DiskAccessStatus

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

DiskAccessStatus defines the observed state of DiskAccess.

func (*DiskAccessStatus) DeepCopy

func (in *DiskAccessStatus) DeepCopy() *DiskAccessStatus

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

func (*DiskAccessStatus) DeepCopyInto

func (in *DiskAccessStatus) DeepCopyInto(out *DiskAccessStatus)

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

type DiskEncryptionKeyInitParameters added in v0.35.0

type DiskEncryptionKeyInitParameters struct {

	// The URL to the Key Vault Secret used as the Disk Encryption Key. This can be found as id on the azurerm_key_vault_secret resource.
	SecretURL *string `json:"secretUrl,omitempty" tf:"secret_url,omitempty"`

	// The ID of the source Key Vault. This can be found as id on the azurerm_key_vault resource.
	SourceVaultID *string `json:"sourceVaultId,omitempty" tf:"source_vault_id,omitempty"`
}

func (*DiskEncryptionKeyInitParameters) DeepCopy added in v0.35.0

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

func (*DiskEncryptionKeyInitParameters) DeepCopyInto added in v0.35.0

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

type DiskEncryptionKeyObservation

type DiskEncryptionKeyObservation struct {

	// The URL to the Key Vault Secret used as the Disk Encryption Key. This can be found as id on the azurerm_key_vault_secret resource.
	SecretURL *string `json:"secretUrl,omitempty" tf:"secret_url,omitempty"`

	// The ID of the source Key Vault. This can be found as id on the azurerm_key_vault resource.
	SourceVaultID *string `json:"sourceVaultId,omitempty" tf:"source_vault_id,omitempty"`
}

func (*DiskEncryptionKeyObservation) DeepCopy

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

func (*DiskEncryptionKeyObservation) DeepCopyInto

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

type DiskEncryptionKeyParameters

type DiskEncryptionKeyParameters struct {

	// The URL to the Key Vault Secret used as the Disk Encryption Key. This can be found as id on the azurerm_key_vault_secret resource.
	// +kubebuilder:validation:Optional
	SecretURL *string `json:"secretUrl" tf:"secret_url,omitempty"`

	// The ID of the source Key Vault. This can be found as id on the azurerm_key_vault resource.
	// +kubebuilder:validation:Optional
	SourceVaultID *string `json:"sourceVaultId" tf:"source_vault_id,omitempty"`
}

func (*DiskEncryptionKeyParameters) DeepCopy

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

func (*DiskEncryptionKeyParameters) DeepCopyInto

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

type DiskEncryptionSet

type DiskEncryptionSet 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.identity) || (has(self.initProvider) && has(self.initProvider.identity))",message="spec.forProvider.identity 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   DiskEncryptionSetSpec   `json:"spec"`
	Status DiskEncryptionSetStatus `json:"status,omitempty"`
}

DiskEncryptionSet is the Schema for the DiskEncryptionSets API. Manages a Disk Encryption Set. +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 (*DiskEncryptionSet) DeepCopy

func (in *DiskEncryptionSet) DeepCopy() *DiskEncryptionSet

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

func (*DiskEncryptionSet) DeepCopyInto

func (in *DiskEncryptionSet) DeepCopyInto(out *DiskEncryptionSet)

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

func (*DiskEncryptionSet) DeepCopyObject

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

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

func (*DiskEncryptionSet) GetCondition

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

GetCondition of this DiskEncryptionSet.

func (*DiskEncryptionSet) GetConnectionDetailsMapping

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

GetConnectionDetailsMapping for this DiskEncryptionSet

func (*DiskEncryptionSet) GetDeletionPolicy

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

GetDeletionPolicy of this DiskEncryptionSet.

func (*DiskEncryptionSet) GetID

func (tr *DiskEncryptionSet) GetID() string

GetID returns ID of underlying Terraform resource of this DiskEncryptionSet

func (*DiskEncryptionSet) GetInitParameters added in v0.35.0

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

GetInitParameters of this DiskEncryptionSet

func (*DiskEncryptionSet) GetManagementPolicies added in v0.35.0

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

GetManagementPolicies of this DiskEncryptionSet.

func (*DiskEncryptionSet) GetMergedParameters added in v0.40.0

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

GetInitParameters of this DiskEncryptionSet

func (*DiskEncryptionSet) GetObservation

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

GetObservation of this DiskEncryptionSet

func (*DiskEncryptionSet) GetParameters

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

GetParameters of this DiskEncryptionSet

func (*DiskEncryptionSet) GetProviderConfigReference

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

GetProviderConfigReference of this DiskEncryptionSet.

func (*DiskEncryptionSet) GetPublishConnectionDetailsTo

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

GetPublishConnectionDetailsTo of this DiskEncryptionSet.

func (*DiskEncryptionSet) GetTerraformResourceType

func (mg *DiskEncryptionSet) GetTerraformResourceType() string

GetTerraformResourceType returns Terraform resource type for this DiskEncryptionSet

func (*DiskEncryptionSet) GetTerraformSchemaVersion

func (tr *DiskEncryptionSet) GetTerraformSchemaVersion() int

GetTerraformSchemaVersion returns the associated Terraform schema version

func (*DiskEncryptionSet) GetWriteConnectionSecretToReference

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

GetWriteConnectionSecretToReference of this DiskEncryptionSet.

func (*DiskEncryptionSet) Hub added in v0.42.1

func (tr *DiskEncryptionSet) Hub()

Hub marks this type as a conversion hub.

func (*DiskEncryptionSet) LateInitialize

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

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

func (*DiskEncryptionSet) ResolveReferences

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

ResolveReferences of this DiskEncryptionSet.

func (*DiskEncryptionSet) SetConditions

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

SetConditions of this DiskEncryptionSet.

func (*DiskEncryptionSet) SetDeletionPolicy

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

SetDeletionPolicy of this DiskEncryptionSet.

func (*DiskEncryptionSet) SetManagementPolicies added in v0.35.0

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

SetManagementPolicies of this DiskEncryptionSet.

func (*DiskEncryptionSet) SetObservation

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

SetObservation for this DiskEncryptionSet

func (*DiskEncryptionSet) SetParameters

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

SetParameters for this DiskEncryptionSet

func (*DiskEncryptionSet) SetProviderConfigReference

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

SetProviderConfigReference of this DiskEncryptionSet.

func (*DiskEncryptionSet) SetPublishConnectionDetailsTo

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

SetPublishConnectionDetailsTo of this DiskEncryptionSet.

func (*DiskEncryptionSet) SetWriteConnectionSecretToReference

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

SetWriteConnectionSecretToReference of this DiskEncryptionSet.

type DiskEncryptionSetInitParameters added in v0.35.0

type DiskEncryptionSetInitParameters struct {

	// Boolean flag to specify whether Azure Disk Encryption Set automatically rotates the encryption Key to latest version or not. Possible values are true or false. Defaults to false.
	AutoKeyRotationEnabled *bool `json:"autoKeyRotationEnabled,omitempty" tf:"auto_key_rotation_enabled,omitempty"`

	// The type of key used to encrypt the data of the disk. Possible values are EncryptionAtRestWithCustomerKey, EncryptionAtRestWithPlatformAndCustomerKeys and ConfidentialVmEncryptedWithCustomerKey. Defaults to EncryptionAtRestWithCustomerKey. Changing this forces a new resource to be created.
	EncryptionType *string `json:"encryptionType,omitempty" tf:"encryption_type,omitempty"`

	// Multi-tenant application client id to access key vault in a different tenant.
	FederatedClientID *string `json:"federatedClientId,omitempty" tf:"federated_client_id,omitempty"`

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

	// Specifies the URL to a Key Vault Key (either from a Key Vault Key, or the Key URL for the Key Vault Secret).
	// +crossplane:generate:reference:type=github.com/upbound/provider-azure/apis/keyvault/v1beta1.Key
	// +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractResourceID()
	KeyVaultKeyID *string `json:"keyVaultKeyId,omitempty" tf:"key_vault_key_id,omitempty"`

	// Reference to a Key in keyvault to populate keyVaultKeyId.
	// +kubebuilder:validation:Optional
	KeyVaultKeyIDRef *v1.Reference `json:"keyVaultKeyIdRef,omitempty" tf:"-"`

	// Selector for a Key in keyvault to populate keyVaultKeyId.
	// +kubebuilder:validation:Optional
	KeyVaultKeyIDSelector *v1.Selector `json:"keyVaultKeyIdSelector,omitempty" tf:"-"`

	// Specifies the Azure Region where the Disk Encryption Set 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 Disk Encryption Set.
	// +mapType=granular
	Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"`
}

func (*DiskEncryptionSetInitParameters) DeepCopy added in v0.35.0

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

func (*DiskEncryptionSetInitParameters) DeepCopyInto added in v0.35.0

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

type DiskEncryptionSetList

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

DiskEncryptionSetList contains a list of DiskEncryptionSets

func (*DiskEncryptionSetList) DeepCopy

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

func (*DiskEncryptionSetList) DeepCopyInto

func (in *DiskEncryptionSetList) DeepCopyInto(out *DiskEncryptionSetList)

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

func (*DiskEncryptionSetList) DeepCopyObject

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

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

func (*DiskEncryptionSetList) GetItems

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

GetItems of this DiskEncryptionSetList.

type DiskEncryptionSetObservation

type DiskEncryptionSetObservation struct {

	// Boolean flag to specify whether Azure Disk Encryption Set automatically rotates the encryption Key to latest version or not. Possible values are true or false. Defaults to false.
	AutoKeyRotationEnabled *bool `json:"autoKeyRotationEnabled,omitempty" tf:"auto_key_rotation_enabled,omitempty"`

	// The type of key used to encrypt the data of the disk. Possible values are EncryptionAtRestWithCustomerKey, EncryptionAtRestWithPlatformAndCustomerKeys and ConfidentialVmEncryptedWithCustomerKey. Defaults to EncryptionAtRestWithCustomerKey. Changing this forces a new resource to be created.
	EncryptionType *string `json:"encryptionType,omitempty" tf:"encryption_type,omitempty"`

	// Multi-tenant application client id to access key vault in a different tenant.
	FederatedClientID *string `json:"federatedClientId,omitempty" tf:"federated_client_id,omitempty"`

	// The ID of the Disk Encryption Set.
	ID *string `json:"id,omitempty" tf:"id,omitempty"`

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

	// Specifies the URL to a Key Vault Key (either from a Key Vault Key, or the Key URL for the Key Vault Secret).
	KeyVaultKeyID *string `json:"keyVaultKeyId,omitempty" tf:"key_vault_key_id,omitempty"`

	// The URL for the Key Vault Key or Key Vault Secret that is currently being used by the service.
	KeyVaultKeyURL *string `json:"keyVaultKeyUrl,omitempty" tf:"key_vault_key_url,omitempty"`

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

	// Specifies the name of the Resource Group where the Disk Encryption Set should exist. 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 Disk Encryption Set.
	// +mapType=granular
	Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"`
}

func (*DiskEncryptionSetObservation) DeepCopy

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

func (*DiskEncryptionSetObservation) DeepCopyInto

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

type DiskEncryptionSetParameters

type DiskEncryptionSetParameters struct {

	// Boolean flag to specify whether Azure Disk Encryption Set automatically rotates the encryption Key to latest version or not. Possible values are true or false. Defaults to false.
	// +kubebuilder:validation:Optional
	AutoKeyRotationEnabled *bool `json:"autoKeyRotationEnabled,omitempty" tf:"auto_key_rotation_enabled,omitempty"`

	// The type of key used to encrypt the data of the disk. Possible values are EncryptionAtRestWithCustomerKey, EncryptionAtRestWithPlatformAndCustomerKeys and ConfidentialVmEncryptedWithCustomerKey. Defaults to EncryptionAtRestWithCustomerKey. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	EncryptionType *string `json:"encryptionType,omitempty" tf:"encryption_type,omitempty"`

	// Multi-tenant application client id to access key vault in a different tenant.
	// +kubebuilder:validation:Optional
	FederatedClientID *string `json:"federatedClientId,omitempty" tf:"federated_client_id,omitempty"`

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

	// Specifies the URL to a Key Vault Key (either from a Key Vault Key, or the Key URL for the Key Vault Secret).
	// +crossplane:generate:reference:type=github.com/upbound/provider-azure/apis/keyvault/v1beta1.Key
	// +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractResourceID()
	// +kubebuilder:validation:Optional
	KeyVaultKeyID *string `json:"keyVaultKeyId,omitempty" tf:"key_vault_key_id,omitempty"`

	// Reference to a Key in keyvault to populate keyVaultKeyId.
	// +kubebuilder:validation:Optional
	KeyVaultKeyIDRef *v1.Reference `json:"keyVaultKeyIdRef,omitempty" tf:"-"`

	// Selector for a Key in keyvault to populate keyVaultKeyId.
	// +kubebuilder:validation:Optional
	KeyVaultKeyIDSelector *v1.Selector `json:"keyVaultKeyIdSelector,omitempty" tf:"-"`

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

	// Specifies the name of the Resource Group where the Disk Encryption Set should exist. 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 Disk Encryption Set.
	// +kubebuilder:validation:Optional
	// +mapType=granular
	Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"`
}

func (*DiskEncryptionSetParameters) DeepCopy

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

func (*DiskEncryptionSetParameters) DeepCopyInto

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

type DiskEncryptionSetSpec

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

DiskEncryptionSetSpec defines the desired state of DiskEncryptionSet

func (*DiskEncryptionSetSpec) DeepCopy

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

func (*DiskEncryptionSetSpec) DeepCopyInto

func (in *DiskEncryptionSetSpec) DeepCopyInto(out *DiskEncryptionSetSpec)

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

type DiskEncryptionSetStatus

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

DiskEncryptionSetStatus defines the observed state of DiskEncryptionSet.

func (*DiskEncryptionSetStatus) DeepCopy

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

func (*DiskEncryptionSetStatus) DeepCopyInto

func (in *DiskEncryptionSetStatus) DeepCopyInto(out *DiskEncryptionSetStatus)

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

type EncryptionSettingsDiskEncryptionKeyInitParameters added in v0.35.0

type EncryptionSettingsDiskEncryptionKeyInitParameters struct {

	// The URL to the Key Vault Secret used as the Disk Encryption Key. This can be found as id on the azurerm_key_vault_secret resource.
	SecretURL *string `json:"secretUrl,omitempty" tf:"secret_url,omitempty"`

	// The ID of the source Key Vault. This can be found as id on the azurerm_key_vault resource.
	SourceVaultID *string `json:"sourceVaultId,omitempty" tf:"source_vault_id,omitempty"`
}

func (*EncryptionSettingsDiskEncryptionKeyInitParameters) DeepCopy added in v0.35.0

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

func (*EncryptionSettingsDiskEncryptionKeyInitParameters) DeepCopyInto added in v0.35.0

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

type EncryptionSettingsDiskEncryptionKeyObservation

type EncryptionSettingsDiskEncryptionKeyObservation struct {

	// The URL to the Key Vault Secret used as the Disk Encryption Key. This can be found as id on the azurerm_key_vault_secret resource.
	SecretURL *string `json:"secretUrl,omitempty" tf:"secret_url,omitempty"`

	// The ID of the source Key Vault. This can be found as id on the azurerm_key_vault resource.
	SourceVaultID *string `json:"sourceVaultId,omitempty" tf:"source_vault_id,omitempty"`
}

func (*EncryptionSettingsDiskEncryptionKeyObservation) DeepCopy

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

func (*EncryptionSettingsDiskEncryptionKeyObservation) DeepCopyInto

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

type EncryptionSettingsDiskEncryptionKeyParameters

type EncryptionSettingsDiskEncryptionKeyParameters struct {

	// The URL to the Key Vault Secret used as the Disk Encryption Key. This can be found as id on the azurerm_key_vault_secret resource.
	// +kubebuilder:validation:Optional
	SecretURL *string `json:"secretUrl" tf:"secret_url,omitempty"`

	// The ID of the source Key Vault. This can be found as id on the azurerm_key_vault resource.
	// +kubebuilder:validation:Optional
	SourceVaultID *string `json:"sourceVaultId" tf:"source_vault_id,omitempty"`
}

func (*EncryptionSettingsDiskEncryptionKeyParameters) DeepCopy

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

func (*EncryptionSettingsDiskEncryptionKeyParameters) DeepCopyInto

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

type EncryptionSettingsInitParameters added in v0.35.0

type EncryptionSettingsInitParameters struct {

	// A disk_encryption_key block as defined above.
	DiskEncryptionKey []DiskEncryptionKeyInitParameters `json:"diskEncryptionKey,omitempty" tf:"disk_encryption_key,omitempty"`

	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// A key_encryption_key block as defined below.
	KeyEncryptionKey []KeyEncryptionKeyInitParameters `json:"keyEncryptionKey,omitempty" tf:"key_encryption_key,omitempty"`
}

func (*EncryptionSettingsInitParameters) DeepCopy added in v0.35.0

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

func (*EncryptionSettingsInitParameters) DeepCopyInto added in v0.35.0

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

type EncryptionSettingsKeyEncryptionKeyInitParameters added in v0.35.0

type EncryptionSettingsKeyEncryptionKeyInitParameters struct {

	// The URL to the Key Vault Key used as the Key Encryption Key. This can be found as id on the azurerm_key_vault_key resource.
	KeyURL *string `json:"keyUrl,omitempty" tf:"key_url,omitempty"`

	// The ID of the source Key Vault. This can be found as id on the azurerm_key_vault resource.
	SourceVaultID *string `json:"sourceVaultId,omitempty" tf:"source_vault_id,omitempty"`
}

func (*EncryptionSettingsKeyEncryptionKeyInitParameters) DeepCopy added in v0.35.0

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

func (*EncryptionSettingsKeyEncryptionKeyInitParameters) DeepCopyInto added in v0.35.0

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

type EncryptionSettingsKeyEncryptionKeyObservation

type EncryptionSettingsKeyEncryptionKeyObservation struct {

	// The URL to the Key Vault Key used as the Key Encryption Key. This can be found as id on the azurerm_key_vault_key resource.
	KeyURL *string `json:"keyUrl,omitempty" tf:"key_url,omitempty"`

	// The ID of the source Key Vault. This can be found as id on the azurerm_key_vault resource.
	SourceVaultID *string `json:"sourceVaultId,omitempty" tf:"source_vault_id,omitempty"`
}

func (*EncryptionSettingsKeyEncryptionKeyObservation) DeepCopy

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

func (*EncryptionSettingsKeyEncryptionKeyObservation) DeepCopyInto

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

type EncryptionSettingsKeyEncryptionKeyParameters

type EncryptionSettingsKeyEncryptionKeyParameters struct {

	// The URL to the Key Vault Key used as the Key Encryption Key. This can be found as id on the azurerm_key_vault_key resource.
	// +kubebuilder:validation:Optional
	KeyURL *string `json:"keyUrl" tf:"key_url,omitempty"`

	// The ID of the source Key Vault. This can be found as id on the azurerm_key_vault resource.
	// +kubebuilder:validation:Optional
	SourceVaultID *string `json:"sourceVaultId" tf:"source_vault_id,omitempty"`
}

func (*EncryptionSettingsKeyEncryptionKeyParameters) DeepCopy

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

func (*EncryptionSettingsKeyEncryptionKeyParameters) DeepCopyInto

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

type EncryptionSettingsObservation

type EncryptionSettingsObservation struct {

	// A disk_encryption_key block as defined above.
	DiskEncryptionKey []DiskEncryptionKeyObservation `json:"diskEncryptionKey,omitempty" tf:"disk_encryption_key,omitempty"`

	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// A key_encryption_key block as defined below.
	KeyEncryptionKey []KeyEncryptionKeyObservation `json:"keyEncryptionKey,omitempty" tf:"key_encryption_key,omitempty"`
}

func (*EncryptionSettingsObservation) DeepCopy

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

func (*EncryptionSettingsObservation) DeepCopyInto

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

type EncryptionSettingsParameters

type EncryptionSettingsParameters struct {

	// A disk_encryption_key block as defined above.
	// +kubebuilder:validation:Optional
	DiskEncryptionKey []DiskEncryptionKeyParameters `json:"diskEncryptionKey,omitempty" tf:"disk_encryption_key,omitempty"`

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

	// A key_encryption_key block as defined below.
	// +kubebuilder:validation:Optional
	KeyEncryptionKey []KeyEncryptionKeyParameters `json:"keyEncryptionKey,omitempty" tf:"key_encryption_key,omitempty"`
}

func (*EncryptionSettingsParameters) DeepCopy

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

func (*EncryptionSettingsParameters) DeepCopyInto

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

type ExtensionInitParameters added in v0.35.0

type ExtensionInitParameters struct {

	// Should the latest version of the Extension be used at Deployment Time, if one is available? This won't auto-update the extension on existing installation. Defaults to true.
	AutoUpgradeMinorVersion *bool `json:"autoUpgradeMinorVersion,omitempty" tf:"auto_upgrade_minor_version,omitempty"`

	// Should the Extension be automatically updated whenever the Publisher releases a new version of this VM Extension?
	AutomaticUpgradeEnabled *bool `json:"automaticUpgradeEnabled,omitempty" tf:"automatic_upgrade_enabled,omitempty"`

	// A value which, when different to the previous value can be used to force-run the Extension even if the Extension Configuration hasn't changed.
	ForceUpdateTag *string `json:"forceUpdateTag,omitempty" tf:"force_update_tag,omitempty"`

	// The name for the Virtual Machine Scale Set Extension.
	Name *string `json:"name,omitempty" tf:"name,omitempty"`

	// A protected_settings_from_key_vault block as defined below.
	ProtectedSettingsFromKeyVault []ProtectedSettingsFromKeyVaultInitParameters `json:"protectedSettingsFromKeyVault,omitempty" tf:"protected_settings_from_key_vault,omitempty"`

	// An ordered list of Extension names which this should be provisioned after.
	ProvisionAfterExtensions []*string `json:"provisionAfterExtensions,omitempty" tf:"provision_after_extensions,omitempty"`

	// Specifies the Publisher of the Extension.
	Publisher *string `json:"publisher,omitempty" tf:"publisher,omitempty"`

	// A JSON String which specifies Settings for the Extension.
	Settings *string `json:"settings,omitempty" tf:"settings,omitempty"`

	// Specifies the Type of the Extension.
	Type *string `json:"type,omitempty" tf:"type,omitempty"`

	// Specifies the version of the extension to use, available versions can be found using the Azure CLI.
	TypeHandlerVersion *string `json:"typeHandlerVersion,omitempty" tf:"type_handler_version,omitempty"`
}

func (*ExtensionInitParameters) DeepCopy added in v0.35.0

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

func (*ExtensionInitParameters) DeepCopyInto added in v0.35.0

func (in *ExtensionInitParameters) DeepCopyInto(out *ExtensionInitParameters)

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

type ExtensionObservation

type ExtensionObservation struct {

	// Should the latest version of the Extension be used at Deployment Time, if one is available? This won't auto-update the extension on existing installation. Defaults to true.
	AutoUpgradeMinorVersion *bool `json:"autoUpgradeMinorVersion,omitempty" tf:"auto_upgrade_minor_version,omitempty"`

	// Should the Extension be automatically updated whenever the Publisher releases a new version of this VM Extension?
	AutomaticUpgradeEnabled *bool `json:"automaticUpgradeEnabled,omitempty" tf:"automatic_upgrade_enabled,omitempty"`

	// A value which, when different to the previous value can be used to force-run the Extension even if the Extension Configuration hasn't changed.
	ForceUpdateTag *string `json:"forceUpdateTag,omitempty" tf:"force_update_tag,omitempty"`

	// The name for the Virtual Machine Scale Set Extension.
	Name *string `json:"name,omitempty" tf:"name,omitempty"`

	// A protected_settings_from_key_vault block as defined below.
	ProtectedSettingsFromKeyVault []ProtectedSettingsFromKeyVaultObservation `json:"protectedSettingsFromKeyVault,omitempty" tf:"protected_settings_from_key_vault,omitempty"`

	// An ordered list of Extension names which this should be provisioned after.
	ProvisionAfterExtensions []*string `json:"provisionAfterExtensions,omitempty" tf:"provision_after_extensions,omitempty"`

	// Specifies the Publisher of the Extension.
	Publisher *string `json:"publisher,omitempty" tf:"publisher,omitempty"`

	// A JSON String which specifies Settings for the Extension.
	Settings *string `json:"settings,omitempty" tf:"settings,omitempty"`

	// Specifies the Type of the Extension.
	Type *string `json:"type,omitempty" tf:"type,omitempty"`

	// Specifies the version of the extension to use, available versions can be found using the Azure CLI.
	TypeHandlerVersion *string `json:"typeHandlerVersion,omitempty" tf:"type_handler_version,omitempty"`
}

func (*ExtensionObservation) DeepCopy

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

func (*ExtensionObservation) DeepCopyInto

func (in *ExtensionObservation) DeepCopyInto(out *ExtensionObservation)

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

type ExtensionParameters

type ExtensionParameters struct {

	// Should the latest version of the Extension be used at Deployment Time, if one is available? This won't auto-update the extension on existing installation. Defaults to true.
	// +kubebuilder:validation:Optional
	AutoUpgradeMinorVersion *bool `json:"autoUpgradeMinorVersion,omitempty" tf:"auto_upgrade_minor_version,omitempty"`

	// Should the Extension be automatically updated whenever the Publisher releases a new version of this VM Extension?
	// +kubebuilder:validation:Optional
	AutomaticUpgradeEnabled *bool `json:"automaticUpgradeEnabled,omitempty" tf:"automatic_upgrade_enabled,omitempty"`

	// A value which, when different to the previous value can be used to force-run the Extension even if the Extension Configuration hasn't changed.
	// +kubebuilder:validation:Optional
	ForceUpdateTag *string `json:"forceUpdateTag,omitempty" tf:"force_update_tag,omitempty"`

	// The name for the Virtual Machine Scale Set Extension.
	// +kubebuilder:validation:Optional
	Name *string `json:"name" tf:"name,omitempty"`

	// A protected_settings_from_key_vault block as defined below.
	// +kubebuilder:validation:Optional
	ProtectedSettingsFromKeyVault []ProtectedSettingsFromKeyVaultParameters `json:"protectedSettingsFromKeyVault,omitempty" tf:"protected_settings_from_key_vault,omitempty"`

	// A JSON String which specifies Sensitive Settings (such as Passwords) for the Extension.
	// +kubebuilder:validation:Optional
	ProtectedSettingsSecretRef *v1.SecretKeySelector `json:"protectedSettingsSecretRef,omitempty" tf:"-"`

	// An ordered list of Extension names which this should be provisioned after.
	// +kubebuilder:validation:Optional
	ProvisionAfterExtensions []*string `json:"provisionAfterExtensions,omitempty" tf:"provision_after_extensions,omitempty"`

	// Specifies the Publisher of the Extension.
	// +kubebuilder:validation:Optional
	Publisher *string `json:"publisher" tf:"publisher,omitempty"`

	// A JSON String which specifies Settings for the Extension.
	// +kubebuilder:validation:Optional
	Settings *string `json:"settings,omitempty" tf:"settings,omitempty"`

	// Specifies the Type of the Extension.
	// +kubebuilder:validation:Optional
	Type *string `json:"type" tf:"type,omitempty"`

	// Specifies the version of the extension to use, available versions can be found using the Azure CLI.
	// +kubebuilder:validation:Optional
	TypeHandlerVersion *string `json:"typeHandlerVersion" tf:"type_handler_version,omitempty"`
}

func (*ExtensionParameters) DeepCopy

func (in *ExtensionParameters) DeepCopy() *ExtensionParameters

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

func (*ExtensionParameters) DeepCopyInto

func (in *ExtensionParameters) DeepCopyInto(out *ExtensionParameters)

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

type ExtensionProtectedSettingsFromKeyVaultInitParameters added in v0.35.0

type ExtensionProtectedSettingsFromKeyVaultInitParameters struct {

	// The URL to the Key Vault Secret which stores the protected settings.
	SecretURL *string `json:"secretUrl,omitempty" tf:"secret_url,omitempty"`

	// The ID of the source Key Vault.
	SourceVaultID *string `json:"sourceVaultId,omitempty" tf:"source_vault_id,omitempty"`
}

func (*ExtensionProtectedSettingsFromKeyVaultInitParameters) DeepCopy added in v0.35.0

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

func (*ExtensionProtectedSettingsFromKeyVaultInitParameters) DeepCopyInto added in v0.35.0

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

type ExtensionProtectedSettingsFromKeyVaultObservation added in v0.26.0

type ExtensionProtectedSettingsFromKeyVaultObservation struct {

	// The URL to the Key Vault Secret which stores the protected settings.
	SecretURL *string `json:"secretUrl,omitempty" tf:"secret_url,omitempty"`

	// The ID of the source Key Vault.
	SourceVaultID *string `json:"sourceVaultId,omitempty" tf:"source_vault_id,omitempty"`
}

func (*ExtensionProtectedSettingsFromKeyVaultObservation) DeepCopy added in v0.26.0

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

func (*ExtensionProtectedSettingsFromKeyVaultObservation) DeepCopyInto added in v0.26.0

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

type ExtensionProtectedSettingsFromKeyVaultParameters added in v0.26.0

type ExtensionProtectedSettingsFromKeyVaultParameters struct {

	// The URL to the Key Vault Secret which stores the protected settings.
	// +kubebuilder:validation:Optional
	SecretURL *string `json:"secretUrl" tf:"secret_url,omitempty"`

	// The ID of the source Key Vault.
	// +kubebuilder:validation:Optional
	SourceVaultID *string `json:"sourceVaultId" tf:"source_vault_id,omitempty"`
}

func (*ExtensionProtectedSettingsFromKeyVaultParameters) DeepCopy added in v0.26.0

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

func (*ExtensionProtectedSettingsFromKeyVaultParameters) DeepCopyInto added in v0.26.0

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

type GalleryApplication added in v0.28.0

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

GalleryApplication is the Schema for the GalleryApplications API. Manages a Gallery Application. +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 (*GalleryApplication) DeepCopy added in v0.28.0

func (in *GalleryApplication) DeepCopy() *GalleryApplication

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

func (*GalleryApplication) DeepCopyInto added in v0.28.0

func (in *GalleryApplication) DeepCopyInto(out *GalleryApplication)

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

func (*GalleryApplication) DeepCopyObject added in v0.28.0

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

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

func (*GalleryApplication) GetCondition added in v0.28.0

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

GetCondition of this GalleryApplication.

func (*GalleryApplication) GetConnectionDetailsMapping added in v0.28.0

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

GetConnectionDetailsMapping for this GalleryApplication

func (*GalleryApplication) GetDeletionPolicy added in v0.28.0

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

GetDeletionPolicy of this GalleryApplication.

func (*GalleryApplication) GetID added in v0.28.0

func (tr *GalleryApplication) GetID() string

GetID returns ID of underlying Terraform resource of this GalleryApplication

func (*GalleryApplication) GetInitParameters added in v0.35.0

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

GetInitParameters of this GalleryApplication

func (*GalleryApplication) GetManagementPolicies added in v0.35.0

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

GetManagementPolicies of this GalleryApplication.

func (*GalleryApplication) GetMergedParameters added in v0.40.0

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

GetInitParameters of this GalleryApplication

func (*GalleryApplication) GetObservation added in v0.28.0

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

GetObservation of this GalleryApplication

func (*GalleryApplication) GetParameters added in v0.28.0

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

GetParameters of this GalleryApplication

func (*GalleryApplication) GetProviderConfigReference added in v0.28.0

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

GetProviderConfigReference of this GalleryApplication.

func (*GalleryApplication) GetPublishConnectionDetailsTo added in v0.28.0

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

GetPublishConnectionDetailsTo of this GalleryApplication.

func (*GalleryApplication) GetTerraformResourceType added in v0.28.0

func (mg *GalleryApplication) GetTerraformResourceType() string

GetTerraformResourceType returns Terraform resource type for this GalleryApplication

func (*GalleryApplication) GetTerraformSchemaVersion added in v0.28.0

func (tr *GalleryApplication) GetTerraformSchemaVersion() int

GetTerraformSchemaVersion returns the associated Terraform schema version

func (*GalleryApplication) GetWriteConnectionSecretToReference added in v0.28.0

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

GetWriteConnectionSecretToReference of this GalleryApplication.

func (*GalleryApplication) Hub added in v0.42.1

func (tr *GalleryApplication) Hub()

Hub marks this type as a conversion hub.

func (*GalleryApplication) LateInitialize added in v0.28.0

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

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

func (*GalleryApplication) ResolveReferences added in v0.28.0

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

ResolveReferences of this GalleryApplication.

func (*GalleryApplication) SetConditions added in v0.28.0

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

SetConditions of this GalleryApplication.

func (*GalleryApplication) SetDeletionPolicy added in v0.28.0

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

SetDeletionPolicy of this GalleryApplication.

func (*GalleryApplication) SetManagementPolicies added in v0.35.0

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

SetManagementPolicies of this GalleryApplication.

func (*GalleryApplication) SetObservation added in v0.28.0

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

SetObservation for this GalleryApplication

func (*GalleryApplication) SetParameters added in v0.28.0

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

SetParameters for this GalleryApplication

func (*GalleryApplication) SetProviderConfigReference added in v0.28.0

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

SetProviderConfigReference of this GalleryApplication.

func (*GalleryApplication) SetPublishConnectionDetailsTo added in v0.28.0

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

SetPublishConnectionDetailsTo of this GalleryApplication.

func (*GalleryApplication) SetWriteConnectionSecretToReference added in v0.28.0

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

SetWriteConnectionSecretToReference of this GalleryApplication.

type GalleryApplicationInitParameters added in v0.35.0

type GalleryApplicationInitParameters struct {

	// A description of the Gallery Application.
	Description *string `json:"description,omitempty" tf:"description,omitempty"`

	// The end of life date in RFC3339 format of the Gallery Application.
	EndOfLifeDate *string `json:"endOfLifeDate,omitempty" tf:"end_of_life_date,omitempty"`

	// The End User Licence Agreement of the Gallery Application.
	Eula *string `json:"eula,omitempty" tf:"eula,omitempty"`

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

	// The URI containing the Privacy Statement associated with the Gallery Application.
	PrivacyStatementURI *string `json:"privacyStatementUri,omitempty" tf:"privacy_statement_uri,omitempty"`

	// The URI containing the Release Notes associated with the Gallery Application.
	ReleaseNoteURI *string `json:"releaseNoteUri,omitempty" tf:"release_note_uri,omitempty"`

	// The type of the Operating System supported for the Gallery Application. Possible values are Linux and Windows. Changing this forces a new resource to be created.
	SupportedOsType *string `json:"supportedOsType,omitempty" tf:"supported_os_type,omitempty"`

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

func (*GalleryApplicationInitParameters) DeepCopy added in v0.35.0

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

func (*GalleryApplicationInitParameters) DeepCopyInto added in v0.35.0

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

type GalleryApplicationList added in v0.28.0

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

GalleryApplicationList contains a list of GalleryApplications

func (*GalleryApplicationList) DeepCopy added in v0.28.0

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

func (*GalleryApplicationList) DeepCopyInto added in v0.28.0

func (in *GalleryApplicationList) DeepCopyInto(out *GalleryApplicationList)

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

func (*GalleryApplicationList) DeepCopyObject added in v0.28.0

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

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

func (*GalleryApplicationList) GetItems added in v0.28.0

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

GetItems of this GalleryApplicationList.

type GalleryApplicationObservation added in v0.26.0

type GalleryApplicationObservation struct {

	// A description of the Gallery Application.
	Description *string `json:"description,omitempty" tf:"description,omitempty"`

	// The end of life date in RFC3339 format of the Gallery Application.
	EndOfLifeDate *string `json:"endOfLifeDate,omitempty" tf:"end_of_life_date,omitempty"`

	// The End User Licence Agreement of the Gallery Application.
	Eula *string `json:"eula,omitempty" tf:"eula,omitempty"`

	// The ID of the Shared Image Gallery. Changing this forces a new resource to be created.
	GalleryID *string `json:"galleryId,omitempty" tf:"gallery_id,omitempty"`

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

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

	// The URI containing the Privacy Statement associated with the Gallery Application.
	PrivacyStatementURI *string `json:"privacyStatementUri,omitempty" tf:"privacy_statement_uri,omitempty"`

	// The URI containing the Release Notes associated with the Gallery Application.
	ReleaseNoteURI *string `json:"releaseNoteUri,omitempty" tf:"release_note_uri,omitempty"`

	// The type of the Operating System supported for the Gallery Application. Possible values are Linux and Windows. Changing this forces a new resource to be created.
	SupportedOsType *string `json:"supportedOsType,omitempty" tf:"supported_os_type,omitempty"`

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

func (*GalleryApplicationObservation) DeepCopy added in v0.26.0

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

func (*GalleryApplicationObservation) DeepCopyInto added in v0.26.0

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

type GalleryApplicationParameters added in v0.26.0

type GalleryApplicationParameters struct {

	// A description of the Gallery Application.
	// +kubebuilder:validation:Optional
	Description *string `json:"description,omitempty" tf:"description,omitempty"`

	// The end of life date in RFC3339 format of the Gallery Application.
	// +kubebuilder:validation:Optional
	EndOfLifeDate *string `json:"endOfLifeDate,omitempty" tf:"end_of_life_date,omitempty"`

	// The End User Licence Agreement of the Gallery Application.
	// +kubebuilder:validation:Optional
	Eula *string `json:"eula,omitempty" tf:"eula,omitempty"`

	// The ID of the Shared Image Gallery. Changing this forces a new resource to be created.
	// +crossplane:generate:reference:type=github.com/upbound/provider-azure/apis/compute/v1beta1.SharedImageGallery
	// +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractResourceID()
	// +kubebuilder:validation:Optional
	GalleryID *string `json:"galleryId,omitempty" tf:"gallery_id,omitempty"`

	// Reference to a SharedImageGallery in compute to populate galleryId.
	// +kubebuilder:validation:Optional
	GalleryIDRef *v1.Reference `json:"galleryIdRef,omitempty" tf:"-"`

	// Selector for a SharedImageGallery in compute to populate galleryId.
	// +kubebuilder:validation:Optional
	GalleryIDSelector *v1.Selector `json:"galleryIdSelector,omitempty" tf:"-"`

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

	// The URI containing the Privacy Statement associated with the Gallery Application.
	// +kubebuilder:validation:Optional
	PrivacyStatementURI *string `json:"privacyStatementUri,omitempty" tf:"privacy_statement_uri,omitempty"`

	// The URI containing the Release Notes associated with the Gallery Application.
	// +kubebuilder:validation:Optional
	ReleaseNoteURI *string `json:"releaseNoteUri,omitempty" tf:"release_note_uri,omitempty"`

	// The type of the Operating System supported for the Gallery Application. Possible values are Linux and Windows. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	SupportedOsType *string `json:"supportedOsType,omitempty" tf:"supported_os_type,omitempty"`

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

func (*GalleryApplicationParameters) DeepCopy added in v0.26.0

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

func (*GalleryApplicationParameters) DeepCopyInto added in v0.26.0

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

type GalleryApplicationSpec added in v0.28.0

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

GalleryApplicationSpec defines the desired state of GalleryApplication

func (*GalleryApplicationSpec) DeepCopy added in v0.28.0

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

func (*GalleryApplicationSpec) DeepCopyInto added in v0.28.0

func (in *GalleryApplicationSpec) DeepCopyInto(out *GalleryApplicationSpec)

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

type GalleryApplicationStatus added in v0.28.0

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

GalleryApplicationStatus defines the observed state of GalleryApplication.

func (*GalleryApplicationStatus) DeepCopy added in v0.28.0

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

func (*GalleryApplicationStatus) DeepCopyInto added in v0.28.0

func (in *GalleryApplicationStatus) DeepCopyInto(out *GalleryApplicationStatus)

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

type GalleryApplicationVersion added in v0.28.0

type GalleryApplicationVersion 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.manageAction) || (has(self.initProvider) && has(self.initProvider.manageAction))",message="spec.forProvider.manageAction is a required parameter"
	// +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.name) || (has(self.initProvider) && has(self.initProvider.name))",message="spec.forProvider.name is a required parameter"
	// +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.source) || (has(self.initProvider) && has(self.initProvider.source))",message="spec.forProvider.source is a required parameter"
	// +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.targetRegion) || (has(self.initProvider) && has(self.initProvider.targetRegion))",message="spec.forProvider.targetRegion is a required parameter"
	Spec   GalleryApplicationVersionSpec   `json:"spec"`
	Status GalleryApplicationVersionStatus `json:"status,omitempty"`
}

GalleryApplicationVersion is the Schema for the GalleryApplicationVersions API. Manages a Gallery Application Version. +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 (*GalleryApplicationVersion) DeepCopy added in v0.28.0

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

func (*GalleryApplicationVersion) DeepCopyInto added in v0.28.0

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

func (*GalleryApplicationVersion) DeepCopyObject added in v0.28.0

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

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

func (*GalleryApplicationVersion) GetCondition added in v0.28.0

GetCondition of this GalleryApplicationVersion.

func (*GalleryApplicationVersion) GetConnectionDetailsMapping added in v0.28.0

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

GetConnectionDetailsMapping for this GalleryApplicationVersion

func (*GalleryApplicationVersion) GetDeletionPolicy added in v0.28.0

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

GetDeletionPolicy of this GalleryApplicationVersion.

func (*GalleryApplicationVersion) GetID added in v0.28.0

func (tr *GalleryApplicationVersion) GetID() string

GetID returns ID of underlying Terraform resource of this GalleryApplicationVersion

func (*GalleryApplicationVersion) GetInitParameters added in v0.35.0

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

GetInitParameters of this GalleryApplicationVersion

func (*GalleryApplicationVersion) GetManagementPolicies added in v0.35.0

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

GetManagementPolicies of this GalleryApplicationVersion.

func (*GalleryApplicationVersion) GetMergedParameters added in v0.40.0

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

GetInitParameters of this GalleryApplicationVersion

func (*GalleryApplicationVersion) GetObservation added in v0.28.0

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

GetObservation of this GalleryApplicationVersion

func (*GalleryApplicationVersion) GetParameters added in v0.28.0

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

GetParameters of this GalleryApplicationVersion

func (*GalleryApplicationVersion) GetProviderConfigReference added in v0.28.0

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

GetProviderConfigReference of this GalleryApplicationVersion.

func (*GalleryApplicationVersion) GetPublishConnectionDetailsTo added in v0.28.0

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

GetPublishConnectionDetailsTo of this GalleryApplicationVersion.

func (*GalleryApplicationVersion) GetTerraformResourceType added in v0.28.0

func (mg *GalleryApplicationVersion) GetTerraformResourceType() string

GetTerraformResourceType returns Terraform resource type for this GalleryApplicationVersion

func (*GalleryApplicationVersion) GetTerraformSchemaVersion added in v0.28.0

func (tr *GalleryApplicationVersion) GetTerraformSchemaVersion() int

GetTerraformSchemaVersion returns the associated Terraform schema version

func (*GalleryApplicationVersion) GetWriteConnectionSecretToReference added in v0.28.0

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

GetWriteConnectionSecretToReference of this GalleryApplicationVersion.

func (*GalleryApplicationVersion) Hub added in v0.42.1

func (tr *GalleryApplicationVersion) Hub()

Hub marks this type as a conversion hub.

func (*GalleryApplicationVersion) LateInitialize added in v0.28.0

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

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

func (*GalleryApplicationVersion) ResolveReferences added in v0.28.0

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

ResolveReferences of this GalleryApplicationVersion.

func (*GalleryApplicationVersion) SetConditions added in v0.28.0

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

SetConditions of this GalleryApplicationVersion.

func (*GalleryApplicationVersion) SetDeletionPolicy added in v0.28.0

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

SetDeletionPolicy of this GalleryApplicationVersion.

func (*GalleryApplicationVersion) SetManagementPolicies added in v0.35.0

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

SetManagementPolicies of this GalleryApplicationVersion.

func (*GalleryApplicationVersion) SetObservation added in v0.28.0

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

SetObservation for this GalleryApplicationVersion

func (*GalleryApplicationVersion) SetParameters added in v0.28.0

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

SetParameters for this GalleryApplicationVersion

func (*GalleryApplicationVersion) SetProviderConfigReference added in v0.28.0

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

SetProviderConfigReference of this GalleryApplicationVersion.

func (*GalleryApplicationVersion) SetPublishConnectionDetailsTo added in v0.28.0

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

SetPublishConnectionDetailsTo of this GalleryApplicationVersion.

func (*GalleryApplicationVersion) SetWriteConnectionSecretToReference added in v0.28.0

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

SetWriteConnectionSecretToReference of this GalleryApplicationVersion.

type GalleryApplicationVersionInitParameters added in v0.35.0

type GalleryApplicationVersionInitParameters struct {

	// Specifies the name of the config file on the VM. Changing this forces a new resource to be created.
	ConfigFile *string `json:"configFile,omitempty" tf:"config_file,omitempty"`

	// Should the Gallery Application reports health. Defaults to false.
	EnableHealthCheck *bool `json:"enableHealthCheck,omitempty" tf:"enable_health_check,omitempty"`

	// The end of life date in RFC3339 format of the Gallery Application Version.
	EndOfLifeDate *string `json:"endOfLifeDate,omitempty" tf:"end_of_life_date,omitempty"`

	// Should the Gallery Application Version be excluded from the latest filter? If set to true this Gallery Application Version won't be returned for the latest version. Defaults to false.
	ExcludeFromLatest *bool `json:"excludeFromLatest,omitempty" tf:"exclude_from_latest,omitempty"`

	// The ID of the Gallery Application. Changing this forces a new resource to be created.
	// +crossplane:generate:reference:type=github.com/upbound/provider-azure/apis/compute/v1beta1.GalleryApplication
	// +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractResourceID()
	GalleryApplicationID *string `json:"galleryApplicationId,omitempty" tf:"gallery_application_id,omitempty"`

	// Reference to a GalleryApplication in compute to populate galleryApplicationId.
	// +kubebuilder:validation:Optional
	GalleryApplicationIDRef *v1.Reference `json:"galleryApplicationIdRef,omitempty" tf:"-"`

	// Selector for a GalleryApplication in compute to populate galleryApplicationId.
	// +kubebuilder:validation:Optional
	GalleryApplicationIDSelector *v1.Selector `json:"galleryApplicationIdSelector,omitempty" tf:"-"`

	// The Azure Region where the Gallery Application Version exists. Changing this forces a new resource to be created.
	Location *string `json:"location,omitempty" tf:"location,omitempty"`

	// A manage_action block as defined below.
	ManageAction []ManageActionInitParameters `json:"manageAction,omitempty" tf:"manage_action,omitempty"`

	// The version name of the Gallery Application Version, such as 1.0.0. Changing this forces a new resource to be created.
	Name *string `json:"name,omitempty" tf:"name,omitempty"`

	// Specifies the name of the package file on the VM. Changing this forces a new resource to be created.
	PackageFile *string `json:"packageFile,omitempty" tf:"package_file,omitempty"`

	// A source block as defined below.
	Source []SourceInitParameters `json:"source,omitempty" tf:"source,omitempty"`

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

	// One or more target_region blocks as defined below.
	TargetRegion []TargetRegionInitParameters `json:"targetRegion,omitempty" tf:"target_region,omitempty"`
}

func (*GalleryApplicationVersionInitParameters) DeepCopy added in v0.35.0

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

func (*GalleryApplicationVersionInitParameters) DeepCopyInto added in v0.35.0

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

type GalleryApplicationVersionList added in v0.28.0

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

GalleryApplicationVersionList contains a list of GalleryApplicationVersions

func (*GalleryApplicationVersionList) DeepCopy added in v0.28.0

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

func (*GalleryApplicationVersionList) DeepCopyInto added in v0.28.0

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

func (*GalleryApplicationVersionList) DeepCopyObject added in v0.28.0

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

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

func (*GalleryApplicationVersionList) GetItems added in v0.28.0

GetItems of this GalleryApplicationVersionList.

type GalleryApplicationVersionObservation added in v0.28.0

type GalleryApplicationVersionObservation struct {

	// Specifies the name of the config file on the VM. Changing this forces a new resource to be created.
	ConfigFile *string `json:"configFile,omitempty" tf:"config_file,omitempty"`

	// Should the Gallery Application reports health. Defaults to false.
	EnableHealthCheck *bool `json:"enableHealthCheck,omitempty" tf:"enable_health_check,omitempty"`

	// The end of life date in RFC3339 format of the Gallery Application Version.
	EndOfLifeDate *string `json:"endOfLifeDate,omitempty" tf:"end_of_life_date,omitempty"`

	// Should the Gallery Application Version be excluded from the latest filter? If set to true this Gallery Application Version won't be returned for the latest version. Defaults to false.
	ExcludeFromLatest *bool `json:"excludeFromLatest,omitempty" tf:"exclude_from_latest,omitempty"`

	// The ID of the Gallery Application. Changing this forces a new resource to be created.
	GalleryApplicationID *string `json:"galleryApplicationId,omitempty" tf:"gallery_application_id,omitempty"`

	// The ID of the Gallery Application Version.
	ID *string `json:"id,omitempty" tf:"id,omitempty"`

	// The Azure Region where the Gallery Application Version exists. Changing this forces a new resource to be created.
	Location *string `json:"location,omitempty" tf:"location,omitempty"`

	// A manage_action block as defined below.
	ManageAction []ManageActionObservation `json:"manageAction,omitempty" tf:"manage_action,omitempty"`

	// The version name of the Gallery Application Version, such as 1.0.0. Changing this forces a new resource to be created.
	Name *string `json:"name,omitempty" tf:"name,omitempty"`

	// Specifies the name of the package file on the VM. Changing this forces a new resource to be created.
	PackageFile *string `json:"packageFile,omitempty" tf:"package_file,omitempty"`

	// A source block as defined below.
	Source []SourceObservation `json:"source,omitempty" tf:"source,omitempty"`

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

	// One or more target_region blocks as defined below.
	TargetRegion []TargetRegionObservation `json:"targetRegion,omitempty" tf:"target_region,omitempty"`
}

func (*GalleryApplicationVersionObservation) DeepCopy added in v0.28.0

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

func (*GalleryApplicationVersionObservation) DeepCopyInto added in v0.28.0

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

type GalleryApplicationVersionParameters added in v0.28.0

type GalleryApplicationVersionParameters struct {

	// Specifies the name of the config file on the VM. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	ConfigFile *string `json:"configFile,omitempty" tf:"config_file,omitempty"`

	// Should the Gallery Application reports health. Defaults to false.
	// +kubebuilder:validation:Optional
	EnableHealthCheck *bool `json:"enableHealthCheck,omitempty" tf:"enable_health_check,omitempty"`

	// The end of life date in RFC3339 format of the Gallery Application Version.
	// +kubebuilder:validation:Optional
	EndOfLifeDate *string `json:"endOfLifeDate,omitempty" tf:"end_of_life_date,omitempty"`

	// Should the Gallery Application Version be excluded from the latest filter? If set to true this Gallery Application Version won't be returned for the latest version. Defaults to false.
	// +kubebuilder:validation:Optional
	ExcludeFromLatest *bool `json:"excludeFromLatest,omitempty" tf:"exclude_from_latest,omitempty"`

	// The ID of the Gallery Application. Changing this forces a new resource to be created.
	// +crossplane:generate:reference:type=github.com/upbound/provider-azure/apis/compute/v1beta1.GalleryApplication
	// +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractResourceID()
	// +kubebuilder:validation:Optional
	GalleryApplicationID *string `json:"galleryApplicationId,omitempty" tf:"gallery_application_id,omitempty"`

	// Reference to a GalleryApplication in compute to populate galleryApplicationId.
	// +kubebuilder:validation:Optional
	GalleryApplicationIDRef *v1.Reference `json:"galleryApplicationIdRef,omitempty" tf:"-"`

	// Selector for a GalleryApplication in compute to populate galleryApplicationId.
	// +kubebuilder:validation:Optional
	GalleryApplicationIDSelector *v1.Selector `json:"galleryApplicationIdSelector,omitempty" tf:"-"`

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

	// A manage_action block as defined below.
	// +kubebuilder:validation:Optional
	ManageAction []ManageActionParameters `json:"manageAction,omitempty" tf:"manage_action,omitempty"`

	// The version name of the Gallery Application Version, such as 1.0.0. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	Name *string `json:"name,omitempty" tf:"name,omitempty"`

	// Specifies the name of the package file on the VM. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	PackageFile *string `json:"packageFile,omitempty" tf:"package_file,omitempty"`

	// A source block as defined below.
	// +kubebuilder:validation:Optional
	Source []SourceParameters `json:"source,omitempty" tf:"source,omitempty"`

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

	// One or more target_region blocks as defined below.
	// +kubebuilder:validation:Optional
	TargetRegion []TargetRegionParameters `json:"targetRegion,omitempty" tf:"target_region,omitempty"`
}

func (*GalleryApplicationVersionParameters) DeepCopy added in v0.28.0

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

func (*GalleryApplicationVersionParameters) DeepCopyInto added in v0.28.0

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

type GalleryApplicationVersionSpec added in v0.28.0

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

GalleryApplicationVersionSpec defines the desired state of GalleryApplicationVersion

func (*GalleryApplicationVersionSpec) DeepCopy added in v0.28.0

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

func (*GalleryApplicationVersionSpec) DeepCopyInto added in v0.28.0

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

type GalleryApplicationVersionStatus added in v0.28.0

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

GalleryApplicationVersionStatus defines the observed state of GalleryApplicationVersion.

func (*GalleryApplicationVersionStatus) DeepCopy added in v0.28.0

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

func (*GalleryApplicationVersionStatus) DeepCopyInto added in v0.28.0

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

type GalleryApplicationsInitParameters added in v0.35.0

type GalleryApplicationsInitParameters struct {
	ConfigurationReferenceBlobURI *string `json:"configurationReferenceBlobUri,omitempty" tf:"configuration_reference_blob_uri,omitempty"`

	// Specifies the order in which the packages have to be installed. Possible values are between 0 and 2,147,483,647. Changing this forces a new resource to be created.
	Order *float64 `json:"order,omitempty" tf:"order,omitempty"`

	// The ID of the Linux Virtual Machine Scale Set.
	PackageReferenceID *string `json:"packageReferenceId,omitempty" tf:"package_reference_id,omitempty"`

	// The IP Tag associated with the Public IP, such as SQL or Storage. Changing this forces a new resource to be created.
	Tag *string `json:"tag,omitempty" tf:"tag,omitempty"`
}

func (*GalleryApplicationsInitParameters) DeepCopy added in v0.35.0

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

func (*GalleryApplicationsInitParameters) DeepCopyInto added in v0.35.0

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

type GalleryApplicationsObservation added in v0.26.0

type GalleryApplicationsObservation struct {
	ConfigurationReferenceBlobURI *string `json:"configurationReferenceBlobUri,omitempty" tf:"configuration_reference_blob_uri,omitempty"`

	// Specifies the order in which the packages have to be installed. Possible values are between 0 and 2,147,483,647. Changing this forces a new resource to be created.
	Order *float64 `json:"order,omitempty" tf:"order,omitempty"`

	// The ID of the Linux Virtual Machine Scale Set.
	PackageReferenceID *string `json:"packageReferenceId,omitempty" tf:"package_reference_id,omitempty"`

	// The IP Tag associated with the Public IP, such as SQL or Storage. Changing this forces a new resource to be created.
	Tag *string `json:"tag,omitempty" tf:"tag,omitempty"`
}

func (*GalleryApplicationsObservation) DeepCopy added in v0.26.0

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

func (*GalleryApplicationsObservation) DeepCopyInto added in v0.26.0

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

type GalleryApplicationsParameters added in v0.26.0

type GalleryApplicationsParameters struct {

	// +kubebuilder:validation:Optional
	ConfigurationReferenceBlobURI *string `json:"configurationReferenceBlobUri,omitempty" tf:"configuration_reference_blob_uri,omitempty"`

	// Specifies the order in which the packages have to be installed. Possible values are between 0 and 2,147,483,647. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	Order *float64 `json:"order,omitempty" tf:"order,omitempty"`

	// The ID of the Linux Virtual Machine Scale Set.
	// +kubebuilder:validation:Optional
	PackageReferenceID *string `json:"packageReferenceId" tf:"package_reference_id,omitempty"`

	// The IP Tag associated with the Public IP, such as SQL or Storage. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	Tag *string `json:"tag,omitempty" tf:"tag,omitempty"`
}

func (*GalleryApplicationsParameters) DeepCopy added in v0.26.0

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

func (*GalleryApplicationsParameters) DeepCopyInto added in v0.26.0

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

type IPConfigurationInitParameters added in v0.35.0

type IPConfigurationInitParameters struct {

	// A list of Backend Address Pools ID's from a Application Gateway which this Virtual Machine Scale Set should be connected to.
	// +listType=set
	ApplicationGatewayBackendAddressPoolIds []*string `json:"applicationGatewayBackendAddressPoolIds,omitempty" tf:"application_gateway_backend_address_pool_ids,omitempty"`

	// A list of Application Security Group ID's which this Virtual Machine Scale Set should be connected to.
	// +listType=set
	ApplicationSecurityGroupIds []*string `json:"applicationSecurityGroupIds,omitempty" tf:"application_security_group_ids,omitempty"`

	// A list of Backend Address Pools ID's from a Load Balancer which this Virtual Machine Scale Set should be connected to.
	// +listType=set
	LoadBalancerBackendAddressPoolIds []*string `json:"loadBalancerBackendAddressPoolIds,omitempty" tf:"load_balancer_backend_address_pool_ids,omitempty"`

	// A list of NAT Rule ID's from a Load Balancer which this Virtual Machine Scale Set should be connected to.
	// +listType=set
	LoadBalancerInboundNATRulesIds []*string `json:"loadBalancerInboundNatRulesIds,omitempty" tf:"load_balancer_inbound_nat_rules_ids,omitempty"`

	// The Name of the Public IP Address Configuration.
	Name *string `json:"name,omitempty" tf:"name,omitempty"`

	// Is this the Primary IP Configuration?
	Primary *bool `json:"primary,omitempty" tf:"primary,omitempty"`

	// A public_ip_address block as defined below.
	PublicIPAddress []PublicIPAddressInitParameters `json:"publicIpAddress,omitempty" tf:"public_ip_address,omitempty"`

	// The ID of the Subnet which this IP Configuration should be connected to.
	// +crossplane:generate:reference:type=github.com/upbound/provider-azure/apis/network/v1beta1.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:"-"`

	// Specifies the version of the image used to create the virtual machines.
	Version *string `json:"version,omitempty" tf:"version,omitempty"`
}

func (*IPConfigurationInitParameters) DeepCopy added in v0.35.0

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

func (*IPConfigurationInitParameters) DeepCopyInto added in v0.35.0

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

type IPConfigurationObservation

type IPConfigurationObservation struct {

	// A list of Backend Address Pools ID's from a Application Gateway which this Virtual Machine Scale Set should be connected to.
	// +listType=set
	ApplicationGatewayBackendAddressPoolIds []*string `json:"applicationGatewayBackendAddressPoolIds,omitempty" tf:"application_gateway_backend_address_pool_ids,omitempty"`

	// A list of Application Security Group ID's which this Virtual Machine Scale Set should be connected to.
	// +listType=set
	ApplicationSecurityGroupIds []*string `json:"applicationSecurityGroupIds,omitempty" tf:"application_security_group_ids,omitempty"`

	// A list of Backend Address Pools ID's from a Load Balancer which this Virtual Machine Scale Set should be connected to.
	// +listType=set
	LoadBalancerBackendAddressPoolIds []*string `json:"loadBalancerBackendAddressPoolIds,omitempty" tf:"load_balancer_backend_address_pool_ids,omitempty"`

	// A list of NAT Rule ID's from a Load Balancer which this Virtual Machine Scale Set should be connected to.
	// +listType=set
	LoadBalancerInboundNATRulesIds []*string `json:"loadBalancerInboundNatRulesIds,omitempty" tf:"load_balancer_inbound_nat_rules_ids,omitempty"`

	// The Name of the Public IP Address Configuration.
	Name *string `json:"name,omitempty" tf:"name,omitempty"`

	// Is this the Primary IP Configuration?
	Primary *bool `json:"primary,omitempty" tf:"primary,omitempty"`

	// A public_ip_address block as defined below.
	PublicIPAddress []PublicIPAddressObservation `json:"publicIpAddress,omitempty" tf:"public_ip_address,omitempty"`

	// The ID of the Subnet which this IP Configuration should be connected to.
	SubnetID *string `json:"subnetId,omitempty" tf:"subnet_id,omitempty"`

	// Specifies the version of the image used to create the virtual machines.
	Version *string `json:"version,omitempty" tf:"version,omitempty"`
}

func (*IPConfigurationObservation) DeepCopy

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

func (*IPConfigurationObservation) DeepCopyInto

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

type IPConfigurationParameters

type IPConfigurationParameters struct {

	// A list of Backend Address Pools ID's from a Application Gateway which this Virtual Machine Scale Set should be connected to.
	// +kubebuilder:validation:Optional
	// +listType=set
	ApplicationGatewayBackendAddressPoolIds []*string `json:"applicationGatewayBackendAddressPoolIds,omitempty" tf:"application_gateway_backend_address_pool_ids,omitempty"`

	// A list of Application Security Group ID's which this Virtual Machine Scale Set should be connected to.
	// +kubebuilder:validation:Optional
	// +listType=set
	ApplicationSecurityGroupIds []*string `json:"applicationSecurityGroupIds,omitempty" tf:"application_security_group_ids,omitempty"`

	// A list of Backend Address Pools ID's from a Load Balancer which this Virtual Machine Scale Set should be connected to.
	// +kubebuilder:validation:Optional
	// +listType=set
	LoadBalancerBackendAddressPoolIds []*string `json:"loadBalancerBackendAddressPoolIds,omitempty" tf:"load_balancer_backend_address_pool_ids,omitempty"`

	// A list of NAT Rule ID's from a Load Balancer which this Virtual Machine Scale Set should be connected to.
	// +kubebuilder:validation:Optional
	// +listType=set
	LoadBalancerInboundNATRulesIds []*string `json:"loadBalancerInboundNatRulesIds,omitempty" tf:"load_balancer_inbound_nat_rules_ids,omitempty"`

	// The Name of the Public IP Address Configuration.
	// +kubebuilder:validation:Optional
	Name *string `json:"name" tf:"name,omitempty"`

	// Is this the Primary IP Configuration?
	// +kubebuilder:validation:Optional
	Primary *bool `json:"primary,omitempty" tf:"primary,omitempty"`

	// A public_ip_address block as defined below.
	// +kubebuilder:validation:Optional
	PublicIPAddress []PublicIPAddressParameters `json:"publicIpAddress,omitempty" tf:"public_ip_address,omitempty"`

	// The ID of the Subnet which this IP Configuration should be connected to.
	// +crossplane:generate:reference:type=github.com/upbound/provider-azure/apis/network/v1beta1.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:"-"`

	// Specifies the version of the image used to create the virtual machines.
	// +kubebuilder:validation:Optional
	Version *string `json:"version,omitempty" tf:"version,omitempty"`
}

func (*IPConfigurationParameters) DeepCopy

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

func (*IPConfigurationParameters) DeepCopyInto

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

type IPConfigurationPublicIPAddressIPTagInitParameters added in v0.35.0

type IPConfigurationPublicIPAddressIPTagInitParameters struct {

	// The IP Tag associated with the Public IP, such as SQL or Storage. Changing this forces a new resource to be created.
	Tag *string `json:"tag,omitempty" tf:"tag,omitempty"`

	// The Type of IP Tag, such as FirstPartyUsage. Changing this forces a new resource to be created.
	Type *string `json:"type,omitempty" tf:"type,omitempty"`
}

func (*IPConfigurationPublicIPAddressIPTagInitParameters) DeepCopy added in v0.35.0

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

func (*IPConfigurationPublicIPAddressIPTagInitParameters) DeepCopyInto added in v0.35.0

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

type IPConfigurationPublicIPAddressIPTagObservation

type IPConfigurationPublicIPAddressIPTagObservation struct {

	// The IP Tag associated with the Public IP, such as SQL or Storage. Changing this forces a new resource to be created.
	Tag *string `json:"tag,omitempty" tf:"tag,omitempty"`

	// The Type of IP Tag, such as FirstPartyUsage. Changing this forces a new resource to be created.
	Type *string `json:"type,omitempty" tf:"type,omitempty"`
}

func (*IPConfigurationPublicIPAddressIPTagObservation) DeepCopy

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

func (*IPConfigurationPublicIPAddressIPTagObservation) DeepCopyInto

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

type IPConfigurationPublicIPAddressIPTagParameters

type IPConfigurationPublicIPAddressIPTagParameters struct {

	// The IP Tag associated with the Public IP, such as SQL or Storage. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	Tag *string `json:"tag" tf:"tag,omitempty"`

	// The Type of IP Tag, such as FirstPartyUsage. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	Type *string `json:"type" tf:"type,omitempty"`
}

func (*IPConfigurationPublicIPAddressIPTagParameters) DeepCopy

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

func (*IPConfigurationPublicIPAddressIPTagParameters) DeepCopyInto

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

type IPConfigurationPublicIPAddressInitParameters added in v0.35.0

type IPConfigurationPublicIPAddressInitParameters struct {

	// The Prefix which should be used for the Domain Name Label for each Virtual Machine Instance. Azure concatenates the Domain Name Label and Virtual Machine Index to create a unique Domain Name Label for each Virtual Machine. Valid values must be between 1 and 26 characters long, start with a lower case letter, end with a lower case letter or number and contains only a-z, 0-9 and hyphens.
	DomainNameLabel *string `json:"domainNameLabel,omitempty" tf:"domain_name_label,omitempty"`

	// One or more ip_tag blocks as defined above. Changing this forces a new resource to be created.
	IPTag []PublicIPAddressIPTagInitParameters `json:"ipTag,omitempty" tf:"ip_tag,omitempty"`

	// The Idle Timeout in Minutes for the Public IP Address. Possible values are in the range 4 to 32.
	IdleTimeoutInMinutes *float64 `json:"idleTimeoutInMinutes,omitempty" tf:"idle_timeout_in_minutes,omitempty"`

	// The Name of the Public IP Address Configuration.
	Name *string `json:"name,omitempty" tf:"name,omitempty"`

	// The ID of the Public IP Address Prefix from where Public IP Addresses should be allocated. Changing this forces a new resource to be created.
	PublicIPPrefixID *string `json:"publicIpPrefixId,omitempty" tf:"public_ip_prefix_id,omitempty"`

	// The name of the SKU to be used by this Virtual Machine Scale Set. Valid values include: any of the General purpose, Compute optimized, Memory optimized, Storage optimized, GPU optimized, FPGA optimized, High performance, or Previous generation virtual machine SKUs.
	SkuName *string `json:"skuName,omitempty" tf:"sku_name,omitempty"`

	// Specifies the version of the image used to create the virtual machines.
	Version *string `json:"version,omitempty" tf:"version,omitempty"`
}

func (*IPConfigurationPublicIPAddressInitParameters) DeepCopy added in v0.35.0

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

func (*IPConfigurationPublicIPAddressInitParameters) DeepCopyInto added in v0.35.0

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

type IPConfigurationPublicIPAddressObservation

type IPConfigurationPublicIPAddressObservation struct {

	// The Prefix which should be used for the Domain Name Label for each Virtual Machine Instance. Azure concatenates the Domain Name Label and Virtual Machine Index to create a unique Domain Name Label for each Virtual Machine. Valid values must be between 1 and 26 characters long, start with a lower case letter, end with a lower case letter or number and contains only a-z, 0-9 and hyphens.
	DomainNameLabel *string `json:"domainNameLabel,omitempty" tf:"domain_name_label,omitempty"`

	// One or more ip_tag blocks as defined above. Changing this forces a new resource to be created.
	IPTag []PublicIPAddressIPTagObservation `json:"ipTag,omitempty" tf:"ip_tag,omitempty"`

	// The Idle Timeout in Minutes for the Public IP Address. Possible values are in the range 4 to 32.
	IdleTimeoutInMinutes *float64 `json:"idleTimeoutInMinutes,omitempty" tf:"idle_timeout_in_minutes,omitempty"`

	// The Name of the Public IP Address Configuration.
	Name *string `json:"name,omitempty" tf:"name,omitempty"`

	// The ID of the Public IP Address Prefix from where Public IP Addresses should be allocated. Changing this forces a new resource to be created.
	PublicIPPrefixID *string `json:"publicIpPrefixId,omitempty" tf:"public_ip_prefix_id,omitempty"`

	// The name of the SKU to be used by this Virtual Machine Scale Set. Valid values include: any of the General purpose, Compute optimized, Memory optimized, Storage optimized, GPU optimized, FPGA optimized, High performance, or Previous generation virtual machine SKUs.
	SkuName *string `json:"skuName,omitempty" tf:"sku_name,omitempty"`

	// Specifies the version of the image used to create the virtual machines.
	Version *string `json:"version,omitempty" tf:"version,omitempty"`
}

func (*IPConfigurationPublicIPAddressObservation) DeepCopy

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

func (*IPConfigurationPublicIPAddressObservation) DeepCopyInto

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

type IPConfigurationPublicIPAddressParameters

type IPConfigurationPublicIPAddressParameters struct {

	// The Prefix which should be used for the Domain Name Label for each Virtual Machine Instance. Azure concatenates the Domain Name Label and Virtual Machine Index to create a unique Domain Name Label for each Virtual Machine. Valid values must be between 1 and 26 characters long, start with a lower case letter, end with a lower case letter or number and contains only a-z, 0-9 and hyphens.
	// +kubebuilder:validation:Optional
	DomainNameLabel *string `json:"domainNameLabel,omitempty" tf:"domain_name_label,omitempty"`

	// One or more ip_tag blocks as defined above. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	IPTag []PublicIPAddressIPTagParameters `json:"ipTag,omitempty" tf:"ip_tag,omitempty"`

	// The Idle Timeout in Minutes for the Public IP Address. Possible values are in the range 4 to 32.
	// +kubebuilder:validation:Optional
	IdleTimeoutInMinutes *float64 `json:"idleTimeoutInMinutes,omitempty" tf:"idle_timeout_in_minutes,omitempty"`

	// The Name of the Public IP Address Configuration.
	// +kubebuilder:validation:Optional
	Name *string `json:"name" tf:"name,omitempty"`

	// The ID of the Public IP Address Prefix from where Public IP Addresses should be allocated. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	PublicIPPrefixID *string `json:"publicIpPrefixId,omitempty" tf:"public_ip_prefix_id,omitempty"`

	// The name of the SKU to be used by this Virtual Machine Scale Set. Valid values include: any of the General purpose, Compute optimized, Memory optimized, Storage optimized, GPU optimized, FPGA optimized, High performance, or Previous generation virtual machine SKUs.
	// +kubebuilder:validation:Optional
	SkuName *string `json:"skuName,omitempty" tf:"sku_name,omitempty"`

	// Specifies the version of the image used to create the virtual machines.
	// +kubebuilder:validation:Optional
	Version *string `json:"version,omitempty" tf:"version,omitempty"`
}

func (*IPConfigurationPublicIPAddressParameters) DeepCopy

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

func (*IPConfigurationPublicIPAddressParameters) DeepCopyInto

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

type IPTagInitParameters added in v0.35.0

type IPTagInitParameters struct {

	// The IP Tag associated with the Public IP, such as SQL or Storage. Changing this forces a new resource to be created.
	Tag *string `json:"tag,omitempty" tf:"tag,omitempty"`

	// The Type of IP Tag, such as FirstPartyUsage. Changing this forces a new resource to be created.
	Type *string `json:"type,omitempty" tf:"type,omitempty"`
}

func (*IPTagInitParameters) DeepCopy added in v0.35.0

func (in *IPTagInitParameters) DeepCopy() *IPTagInitParameters

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

func (*IPTagInitParameters) DeepCopyInto added in v0.35.0

func (in *IPTagInitParameters) DeepCopyInto(out *IPTagInitParameters)

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

type IPTagObservation

type IPTagObservation struct {

	// The IP Tag associated with the Public IP, such as SQL or Storage. Changing this forces a new resource to be created.
	Tag *string `json:"tag,omitempty" tf:"tag,omitempty"`

	// The Type of IP Tag, such as FirstPartyUsage. Changing this forces a new resource to be created.
	Type *string `json:"type,omitempty" tf:"type,omitempty"`
}

func (*IPTagObservation) DeepCopy

func (in *IPTagObservation) DeepCopy() *IPTagObservation

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

func (*IPTagObservation) DeepCopyInto

func (in *IPTagObservation) DeepCopyInto(out *IPTagObservation)

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

type IPTagParameters

type IPTagParameters struct {

	// The IP Tag associated with the Public IP, such as SQL or Storage. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	Tag *string `json:"tag" tf:"tag,omitempty"`

	// The Type of IP Tag, such as FirstPartyUsage. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	Type *string `json:"type" tf:"type,omitempty"`
}

func (*IPTagParameters) DeepCopy

func (in *IPTagParameters) DeepCopy() *IPTagParameters

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

func (*IPTagParameters) DeepCopyInto

func (in *IPTagParameters) DeepCopyInto(out *IPTagParameters)

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

type IdentifierInitParameters added in v0.35.0

type IdentifierInitParameters struct {

	// The Offer Name for this Shared Image. Changing this forces a new resource to be created.
	Offer *string `json:"offer,omitempty" tf:"offer,omitempty"`

	// The Publisher Name for this Gallery Image. Changing this forces a new resource to be created.
	Publisher *string `json:"publisher,omitempty" tf:"publisher,omitempty"`

	// The Name of the SKU for this Gallery Image. Changing this forces a new resource to be created.
	Sku *string `json:"sku,omitempty" tf:"sku,omitempty"`
}

func (*IdentifierInitParameters) DeepCopy added in v0.35.0

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

func (*IdentifierInitParameters) DeepCopyInto added in v0.35.0

func (in *IdentifierInitParameters) DeepCopyInto(out *IdentifierInitParameters)

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

type IdentifierObservation added in v0.28.0

type IdentifierObservation struct {

	// The Offer Name for this Shared Image. Changing this forces a new resource to be created.
	Offer *string `json:"offer,omitempty" tf:"offer,omitempty"`

	// The Publisher Name for this Gallery Image. Changing this forces a new resource to be created.
	Publisher *string `json:"publisher,omitempty" tf:"publisher,omitempty"`

	// The Name of the SKU for this Gallery Image. Changing this forces a new resource to be created.
	Sku *string `json:"sku,omitempty" tf:"sku,omitempty"`
}

func (*IdentifierObservation) DeepCopy added in v0.28.0

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

func (*IdentifierObservation) DeepCopyInto added in v0.28.0

func (in *IdentifierObservation) DeepCopyInto(out *IdentifierObservation)

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

type IdentifierParameters added in v0.28.0

type IdentifierParameters struct {

	// The Offer Name for this Shared Image. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	Offer *string `json:"offer" tf:"offer,omitempty"`

	// The Publisher Name for this Gallery Image. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	Publisher *string `json:"publisher" tf:"publisher,omitempty"`

	// The Name of the SKU for this Gallery Image. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	Sku *string `json:"sku" tf:"sku,omitempty"`
}

func (*IdentifierParameters) DeepCopy added in v0.28.0

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

func (*IdentifierParameters) DeepCopyInto added in v0.28.0

func (in *IdentifierParameters) DeepCopyInto(out *IdentifierParameters)

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

type IdentityInitParameters added in v0.35.0

type IdentityInitParameters struct {

	// A list of User Assigned Managed Identity IDs to be assigned to this Disk Encryption Set.
	// +listType=set
	IdentityIds []*string `json:"identityIds,omitempty" tf:"identity_ids,omitempty"`

	// The type of Managed Service Identity that is configured on this Disk Encryption Set. Possible values are SystemAssigned, UserAssigned, SystemAssigned, UserAssigned (to enable both).
	Type *string `json:"type,omitempty" tf:"type,omitempty"`
}

func (*IdentityInitParameters) DeepCopy added in v0.35.0

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

func (*IdentityInitParameters) DeepCopyInto added in v0.35.0

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 Disk Encryption Set.
	// +listType=set
	IdentityIds []*string `json:"identityIds,omitempty" tf:"identity_ids,omitempty"`

	// The (Client) ID of the Service Principal.
	PrincipalID *string `json:"principalId,omitempty" tf:"principal_id,omitempty"`

	// The ID of the Tenant the Service Principal is assigned in.
	TenantID *string `json:"tenantId,omitempty" tf:"tenant_id,omitempty"`

	// The type of Managed Service Identity that is configured on this Disk Encryption Set. Possible values are SystemAssigned, UserAssigned, SystemAssigned, UserAssigned (to enable both).
	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 Disk Encryption Set.
	// +kubebuilder:validation:Optional
	// +listType=set
	IdentityIds []*string `json:"identityIds,omitempty" tf:"identity_ids,omitempty"`

	// The type of Managed Service Identity that is configured on this Disk Encryption Set. Possible values are SystemAssigned, UserAssigned, SystemAssigned, UserAssigned (to enable both).
	// +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 Image

type Image 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   ImageSpec   `json:"spec"`
	Status ImageStatus `json:"status,omitempty"`
}

Image is the Schema for the Images API. Manages a custom virtual machine image that can be used to create virtual machines. +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 (*Image) DeepCopy

func (in *Image) DeepCopy() *Image

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

func (*Image) DeepCopyInto

func (in *Image) DeepCopyInto(out *Image)

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

func (*Image) DeepCopyObject

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

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

func (*Image) GetCondition

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

GetCondition of this Image.

func (*Image) GetConnectionDetailsMapping

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

GetConnectionDetailsMapping for this Image

func (*Image) GetDeletionPolicy

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

GetDeletionPolicy of this Image.

func (*Image) GetID

func (tr *Image) GetID() string

GetID returns ID of underlying Terraform resource of this Image

func (*Image) GetInitParameters added in v0.35.0

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

GetInitParameters of this Image

func (*Image) GetManagementPolicies added in v0.35.0

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

GetManagementPolicies of this Image.

func (*Image) GetMergedParameters added in v0.40.0

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

GetInitParameters of this Image

func (*Image) GetObservation

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

GetObservation of this Image

func (*Image) GetParameters

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

GetParameters of this Image

func (*Image) GetProviderConfigReference

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

GetProviderConfigReference of this Image.

func (*Image) GetPublishConnectionDetailsTo

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

GetPublishConnectionDetailsTo of this Image.

func (*Image) GetTerraformResourceType

func (mg *Image) GetTerraformResourceType() string

GetTerraformResourceType returns Terraform resource type for this Image

func (*Image) GetTerraformSchemaVersion

func (tr *Image) GetTerraformSchemaVersion() int

GetTerraformSchemaVersion returns the associated Terraform schema version

func (*Image) GetWriteConnectionSecretToReference

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

GetWriteConnectionSecretToReference of this Image.

func (*Image) Hub added in v0.42.1

func (tr *Image) Hub()

Hub marks this type as a conversion hub.

func (*Image) LateInitialize

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

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

func (*Image) ResolveReferences

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

ResolveReferences of this Image.

func (*Image) SetConditions

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

SetConditions of this Image.

func (*Image) SetDeletionPolicy

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

SetDeletionPolicy of this Image.

func (*Image) SetManagementPolicies added in v0.35.0

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

SetManagementPolicies of this Image.

func (*Image) SetObservation

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

SetObservation for this Image

func (*Image) SetParameters

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

SetParameters for this Image

func (*Image) SetProviderConfigReference

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

SetProviderConfigReference of this Image.

func (*Image) SetPublishConnectionDetailsTo

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

SetPublishConnectionDetailsTo of this Image.

func (*Image) SetWriteConnectionSecretToReference

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

SetWriteConnectionSecretToReference of this Image.

type ImageInitParameters added in v0.35.0

type ImageInitParameters struct {

	// One or more data_disk blocks as defined below.
	DataDisk []DataDiskInitParameters `json:"dataDisk,omitempty" tf:"data_disk,omitempty"`

	// The HyperVGenerationType of the VirtualMachine created from the image as V1, V2. Defaults to V1. Changing this forces a new resource to be created.
	HyperVGeneration *string `json:"hyperVGeneration,omitempty" tf:"hyper_v_generation,omitempty"`

	// Specified 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"`

	// One or more os_disk blocks as defined below. Changing this forces a new resource to be created.
	OsDisk []OsDiskInitParameters `json:"osDisk,omitempty" tf:"os_disk,omitempty"`

	// The Virtual Machine ID from which to create the image.
	SourceVirtualMachineID *string `json:"sourceVirtualMachineId,omitempty" tf:"source_virtual_machine_id,omitempty"`

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

	// Is zone resiliency enabled? Defaults to false. Changing this forces a new resource to be created.
	ZoneResilient *bool `json:"zoneResilient,omitempty" tf:"zone_resilient,omitempty"`
}

func (*ImageInitParameters) DeepCopy added in v0.35.0

func (in *ImageInitParameters) DeepCopy() *ImageInitParameters

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

func (*ImageInitParameters) DeepCopyInto added in v0.35.0

func (in *ImageInitParameters) DeepCopyInto(out *ImageInitParameters)

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

type ImageList

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

ImageList contains a list of Images

func (*ImageList) DeepCopy

func (in *ImageList) DeepCopy() *ImageList

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

func (*ImageList) DeepCopyInto

func (in *ImageList) DeepCopyInto(out *ImageList)

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

func (*ImageList) DeepCopyObject

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

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

func (*ImageList) GetItems

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

GetItems of this ImageList.

type ImageObservation

type ImageObservation struct {

	// One or more data_disk blocks as defined below.
	DataDisk []DataDiskObservation `json:"dataDisk,omitempty" tf:"data_disk,omitempty"`

	// The HyperVGenerationType of the VirtualMachine created from the image as V1, V2. Defaults to V1. Changing this forces a new resource to be created.
	HyperVGeneration *string `json:"hyperVGeneration,omitempty" tf:"hyper_v_generation,omitempty"`

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

	// Specified 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"`

	// One or more os_disk blocks as defined below. Changing this forces a new resource to be created.
	OsDisk []OsDiskObservation `json:"osDisk,omitempty" tf:"os_disk,omitempty"`

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

	// The Virtual Machine ID from which to create the image.
	SourceVirtualMachineID *string `json:"sourceVirtualMachineId,omitempty" tf:"source_virtual_machine_id,omitempty"`

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

	// Is zone resiliency enabled? Defaults to false. Changing this forces a new resource to be created.
	ZoneResilient *bool `json:"zoneResilient,omitempty" tf:"zone_resilient,omitempty"`
}

func (*ImageObservation) DeepCopy

func (in *ImageObservation) DeepCopy() *ImageObservation

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

func (*ImageObservation) DeepCopyInto

func (in *ImageObservation) DeepCopyInto(out *ImageObservation)

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

type ImageParameters

type ImageParameters struct {

	// One or more data_disk blocks as defined below.
	// +kubebuilder:validation:Optional
	DataDisk []DataDiskParameters `json:"dataDisk,omitempty" tf:"data_disk,omitempty"`

	// The HyperVGenerationType of the VirtualMachine created from the image as V1, V2. Defaults to V1. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	HyperVGeneration *string `json:"hyperVGeneration,omitempty" tf:"hyper_v_generation,omitempty"`

	// Specified 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"`

	// One or more os_disk blocks as defined below. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	OsDisk []OsDiskParameters `json:"osDisk,omitempty" tf:"os_disk,omitempty"`

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

	// The Virtual Machine ID from which to create the image.
	// +kubebuilder:validation:Optional
	SourceVirtualMachineID *string `json:"sourceVirtualMachineId,omitempty" tf:"source_virtual_machine_id,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"`

	// Is zone resiliency enabled? Defaults to false. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	ZoneResilient *bool `json:"zoneResilient,omitempty" tf:"zone_resilient,omitempty"`
}

func (*ImageParameters) DeepCopy

func (in *ImageParameters) DeepCopy() *ImageParameters

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

func (*ImageParameters) DeepCopyInto

func (in *ImageParameters) DeepCopyInto(out *ImageParameters)

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

type ImageSpec

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

ImageSpec defines the desired state of Image

func (*ImageSpec) DeepCopy

func (in *ImageSpec) DeepCopy() *ImageSpec

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

func (*ImageSpec) DeepCopyInto

func (in *ImageSpec) DeepCopyInto(out *ImageSpec)

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

type ImageStatus

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

ImageStatus defines the observed state of Image.

func (*ImageStatus) DeepCopy

func (in *ImageStatus) DeepCopy() *ImageStatus

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

func (*ImageStatus) DeepCopyInto

func (in *ImageStatus) DeepCopyInto(out *ImageStatus)

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

type KeyEncryptionKeyInitParameters added in v0.35.0

type KeyEncryptionKeyInitParameters struct {

	// The URL to the Key Vault Key used as the Key Encryption Key. This can be found as id on the azurerm_key_vault_key resource.
	KeyURL *string `json:"keyUrl,omitempty" tf:"key_url,omitempty"`

	// The ID of the source Key Vault. This can be found as id on the azurerm_key_vault resource.
	SourceVaultID *string `json:"sourceVaultId,omitempty" tf:"source_vault_id,omitempty"`
}

func (*KeyEncryptionKeyInitParameters) DeepCopy added in v0.35.0

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

func (*KeyEncryptionKeyInitParameters) DeepCopyInto added in v0.35.0

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

type KeyEncryptionKeyObservation

type KeyEncryptionKeyObservation struct {

	// The URL to the Key Vault Key used as the Key Encryption Key. This can be found as id on the azurerm_key_vault_key resource.
	KeyURL *string `json:"keyUrl,omitempty" tf:"key_url,omitempty"`

	// The ID of the source Key Vault. This can be found as id on the azurerm_key_vault resource.
	SourceVaultID *string `json:"sourceVaultId,omitempty" tf:"source_vault_id,omitempty"`
}

func (*KeyEncryptionKeyObservation) DeepCopy

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

func (*KeyEncryptionKeyObservation) DeepCopyInto

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

type KeyEncryptionKeyParameters

type KeyEncryptionKeyParameters struct {

	// The URL to the Key Vault Key used as the Key Encryption Key. This can be found as id on the azurerm_key_vault_key resource.
	// +kubebuilder:validation:Optional
	KeyURL *string `json:"keyUrl" tf:"key_url,omitempty"`

	// The ID of the source Key Vault. This can be found as id on the azurerm_key_vault resource.
	// +kubebuilder:validation:Optional
	SourceVaultID *string `json:"sourceVaultId" tf:"source_vault_id,omitempty"`
}

func (*KeyEncryptionKeyParameters) DeepCopy

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

func (*KeyEncryptionKeyParameters) DeepCopyInto

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

type LinuxConfigurationAdminSSHKeyInitParameters added in v0.35.0

type LinuxConfigurationAdminSSHKeyInitParameters struct {

	// The Public Key which should be used for authentication, which needs to be at least 2048-bit and in ssh-rsa format.
	PublicKey *string `json:"publicKey,omitempty" tf:"public_key,omitempty"`

	// The Username for which this Public SSH Key should be configured.
	Username *string `json:"username,omitempty" tf:"username,omitempty"`
}

func (*LinuxConfigurationAdminSSHKeyInitParameters) DeepCopy added in v0.35.0

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

func (*LinuxConfigurationAdminSSHKeyInitParameters) DeepCopyInto added in v0.35.0

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

type LinuxConfigurationAdminSSHKeyObservation

type LinuxConfigurationAdminSSHKeyObservation struct {

	// The Public Key which should be used for authentication, which needs to be at least 2048-bit and in ssh-rsa format.
	PublicKey *string `json:"publicKey,omitempty" tf:"public_key,omitempty"`

	// The Username for which this Public SSH Key should be configured.
	Username *string `json:"username,omitempty" tf:"username,omitempty"`
}

func (*LinuxConfigurationAdminSSHKeyObservation) DeepCopy

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

func (*LinuxConfigurationAdminSSHKeyObservation) DeepCopyInto

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

type LinuxConfigurationAdminSSHKeyParameters

type LinuxConfigurationAdminSSHKeyParameters struct {

	// The Public Key which should be used for authentication, which needs to be at least 2048-bit and in ssh-rsa format.
	// +kubebuilder:validation:Optional
	PublicKey *string `json:"publicKey" tf:"public_key,omitempty"`

	// The Username for which this Public SSH Key should be configured.
	// +kubebuilder:validation:Optional
	Username *string `json:"username" tf:"username,omitempty"`
}

func (*LinuxConfigurationAdminSSHKeyParameters) DeepCopy

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

func (*LinuxConfigurationAdminSSHKeyParameters) DeepCopyInto

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

type LinuxConfigurationInitParameters added in v0.35.0

type LinuxConfigurationInitParameters struct {

	// A admin_ssh_key block as documented below.
	AdminSSHKey []LinuxConfigurationAdminSSHKeyInitParameters `json:"adminSshKey,omitempty" tf:"admin_ssh_key,omitempty"`

	// The username of the local administrator on each Virtual Machine Scale Set instance. Changing this forces a new resource to be created.
	AdminUsername *string `json:"adminUsername,omitempty" tf:"admin_username,omitempty"`

	// The prefix which should be used for the name of the Virtual Machines in this Scale Set. If unspecified this defaults to the value for the name field. If the value of the name field is not a valid computer_name_prefix, then you must specify computer_name_prefix. Changing this forces a new resource to be created.
	ComputerNamePrefix *string `json:"computerNamePrefix,omitempty" tf:"computer_name_prefix,omitempty"`

	// When an admin_password is specified disable_password_authentication must be set to false. Defaults to true.
	DisablePasswordAuthentication *bool `json:"disablePasswordAuthentication,omitempty" tf:"disable_password_authentication,omitempty"`

	// Specifies the mode of VM Guest Patching for the virtual machines that are associated to the Virtual Machine Scale Set. Possible values are AutomaticByPlatform or ImageDefault. Defaults to ImageDefault.
	PatchAssessmentMode *string `json:"patchAssessmentMode,omitempty" tf:"patch_assessment_mode,omitempty"`

	// Specifies the mode of in-guest patching of this Windows Virtual Machine. Possible values are Manual, AutomaticByOS and AutomaticByPlatform. Defaults to AutomaticByOS. For more information on patch modes please see the product documentation.
	PatchMode *string `json:"patchMode,omitempty" tf:"patch_mode,omitempty"`

	// Should the Azure VM Agent be provisioned on each Virtual Machine in the Scale Set? Defaults to true. Changing this value forces a new resource to be created.
	ProvisionVMAgent *bool `json:"provisionVmAgent,omitempty" tf:"provision_vm_agent,omitempty"`

	// One or more secret blocks as defined below.
	Secret []LinuxConfigurationSecretInitParameters `json:"secret,omitempty" tf:"secret,omitempty"`
}

func (*LinuxConfigurationInitParameters) DeepCopy added in v0.35.0

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

func (*LinuxConfigurationInitParameters) DeepCopyInto added in v0.35.0

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

type LinuxConfigurationObservation

type LinuxConfigurationObservation struct {

	// A admin_ssh_key block as documented below.
	AdminSSHKey []LinuxConfigurationAdminSSHKeyObservation `json:"adminSshKey,omitempty" tf:"admin_ssh_key,omitempty"`

	// The username of the local administrator on each Virtual Machine Scale Set instance. Changing this forces a new resource to be created.
	AdminUsername *string `json:"adminUsername,omitempty" tf:"admin_username,omitempty"`

	// The prefix which should be used for the name of the Virtual Machines in this Scale Set. If unspecified this defaults to the value for the name field. If the value of the name field is not a valid computer_name_prefix, then you must specify computer_name_prefix. Changing this forces a new resource to be created.
	ComputerNamePrefix *string `json:"computerNamePrefix,omitempty" tf:"computer_name_prefix,omitempty"`

	// When an admin_password is specified disable_password_authentication must be set to false. Defaults to true.
	DisablePasswordAuthentication *bool `json:"disablePasswordAuthentication,omitempty" tf:"disable_password_authentication,omitempty"`

	// Specifies the mode of VM Guest Patching for the virtual machines that are associated to the Virtual Machine Scale Set. Possible values are AutomaticByPlatform or ImageDefault. Defaults to ImageDefault.
	PatchAssessmentMode *string `json:"patchAssessmentMode,omitempty" tf:"patch_assessment_mode,omitempty"`

	// Specifies the mode of in-guest patching of this Windows Virtual Machine. Possible values are Manual, AutomaticByOS and AutomaticByPlatform. Defaults to AutomaticByOS. For more information on patch modes please see the product documentation.
	PatchMode *string `json:"patchMode,omitempty" tf:"patch_mode,omitempty"`

	// Should the Azure VM Agent be provisioned on each Virtual Machine in the Scale Set? Defaults to true. Changing this value forces a new resource to be created.
	ProvisionVMAgent *bool `json:"provisionVmAgent,omitempty" tf:"provision_vm_agent,omitempty"`

	// One or more secret blocks as defined below.
	Secret []LinuxConfigurationSecretObservation `json:"secret,omitempty" tf:"secret,omitempty"`
}

func (*LinuxConfigurationObservation) DeepCopy

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

func (*LinuxConfigurationObservation) DeepCopyInto

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

type LinuxConfigurationParameters

type LinuxConfigurationParameters struct {

	// The Password which should be used for the local-administrator on this Virtual Machine. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	AdminPasswordSecretRef *v1.SecretKeySelector `json:"adminPasswordSecretRef,omitempty" tf:"-"`

	// A admin_ssh_key block as documented below.
	// +kubebuilder:validation:Optional
	AdminSSHKey []LinuxConfigurationAdminSSHKeyParameters `json:"adminSshKey,omitempty" tf:"admin_ssh_key,omitempty"`

	// The username of the local administrator on each Virtual Machine Scale Set instance. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	AdminUsername *string `json:"adminUsername" tf:"admin_username,omitempty"`

	// The prefix which should be used for the name of the Virtual Machines in this Scale Set. If unspecified this defaults to the value for the name field. If the value of the name field is not a valid computer_name_prefix, then you must specify computer_name_prefix. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	ComputerNamePrefix *string `json:"computerNamePrefix,omitempty" tf:"computer_name_prefix,omitempty"`

	// When an admin_password is specified disable_password_authentication must be set to false. Defaults to true.
	// +kubebuilder:validation:Optional
	DisablePasswordAuthentication *bool `json:"disablePasswordAuthentication,omitempty" tf:"disable_password_authentication,omitempty"`

	// Specifies the mode of VM Guest Patching for the virtual machines that are associated to the Virtual Machine Scale Set. Possible values are AutomaticByPlatform or ImageDefault. Defaults to ImageDefault.
	// +kubebuilder:validation:Optional
	PatchAssessmentMode *string `json:"patchAssessmentMode,omitempty" tf:"patch_assessment_mode,omitempty"`

	// Specifies the mode of in-guest patching of this Windows Virtual Machine. Possible values are Manual, AutomaticByOS and AutomaticByPlatform. Defaults to AutomaticByOS. For more information on patch modes please see the product documentation.
	// +kubebuilder:validation:Optional
	PatchMode *string `json:"patchMode,omitempty" tf:"patch_mode,omitempty"`

	// Should the Azure VM Agent be provisioned on each Virtual Machine in the Scale Set? Defaults to true. Changing this value forces a new resource to be created.
	// +kubebuilder:validation:Optional
	ProvisionVMAgent *bool `json:"provisionVmAgent,omitempty" tf:"provision_vm_agent,omitempty"`

	// One or more secret blocks as defined below.
	// +kubebuilder:validation:Optional
	Secret []LinuxConfigurationSecretParameters `json:"secret,omitempty" tf:"secret,omitempty"`
}

func (*LinuxConfigurationParameters) DeepCopy

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

func (*LinuxConfigurationParameters) DeepCopyInto

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

type LinuxConfigurationSecretCertificateInitParameters added in v0.35.0

type LinuxConfigurationSecretCertificateInitParameters struct {

	// The Secret URL of a Key Vault Certificate.
	URL *string `json:"url,omitempty" tf:"url,omitempty"`
}

func (*LinuxConfigurationSecretCertificateInitParameters) DeepCopy added in v0.35.0

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

func (*LinuxConfigurationSecretCertificateInitParameters) DeepCopyInto added in v0.35.0

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

type LinuxConfigurationSecretCertificateObservation

type LinuxConfigurationSecretCertificateObservation struct {

	// The Secret URL of a Key Vault Certificate.
	URL *string `json:"url,omitempty" tf:"url,omitempty"`
}

func (*LinuxConfigurationSecretCertificateObservation) DeepCopy

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

func (*LinuxConfigurationSecretCertificateObservation) DeepCopyInto

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

type LinuxConfigurationSecretCertificateParameters

type LinuxConfigurationSecretCertificateParameters struct {

	// The Secret URL of a Key Vault Certificate.
	// +kubebuilder:validation:Optional
	URL *string `json:"url" tf:"url,omitempty"`
}

func (*LinuxConfigurationSecretCertificateParameters) DeepCopy

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

func (*LinuxConfigurationSecretCertificateParameters) DeepCopyInto

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

type LinuxConfigurationSecretInitParameters added in v0.35.0

type LinuxConfigurationSecretInitParameters struct {

	// One or more certificate blocks as defined below.
	Certificate []LinuxConfigurationSecretCertificateInitParameters `json:"certificate,omitempty" tf:"certificate,omitempty"`

	// The ID of the Key Vault from which all Secrets should be sourced.
	KeyVaultID *string `json:"keyVaultId,omitempty" tf:"key_vault_id,omitempty"`
}

func (*LinuxConfigurationSecretInitParameters) DeepCopy added in v0.35.0

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

func (*LinuxConfigurationSecretInitParameters) DeepCopyInto added in v0.35.0

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

type LinuxConfigurationSecretObservation

type LinuxConfigurationSecretObservation struct {

	// One or more certificate blocks as defined below.
	Certificate []LinuxConfigurationSecretCertificateObservation `json:"certificate,omitempty" tf:"certificate,omitempty"`

	// The ID of the Key Vault from which all Secrets should be sourced.
	KeyVaultID *string `json:"keyVaultId,omitempty" tf:"key_vault_id,omitempty"`
}

func (*LinuxConfigurationSecretObservation) DeepCopy

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

func (*LinuxConfigurationSecretObservation) DeepCopyInto

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

type LinuxConfigurationSecretParameters

type LinuxConfigurationSecretParameters struct {

	// One or more certificate blocks as defined below.
	// +kubebuilder:validation:Optional
	Certificate []LinuxConfigurationSecretCertificateParameters `json:"certificate" tf:"certificate,omitempty"`

	// The ID of the Key Vault from which all Secrets should be sourced.
	// +kubebuilder:validation:Optional
	KeyVaultID *string `json:"keyVaultId" tf:"key_vault_id,omitempty"`
}

func (*LinuxConfigurationSecretParameters) DeepCopy

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

func (*LinuxConfigurationSecretParameters) DeepCopyInto

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

type LinuxVirtualMachine

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

LinuxVirtualMachine is the Schema for the LinuxVirtualMachines API. Manages a Linux Virtual Machine. +kubebuilder:printcolumn:name="SYNCED",type="string",JSONPath=".status.conditions[?(@.type=='Synced')].status" +kubebuilder:printcolumn:name="READY",type="string",JSONPath=".status.conditions[?(@.type=='Ready')].status" +kubebuilder:printcolumn:name="EXTERNAL-NAME",type="string",JSONPath=".metadata.annotations.crossplane\\.io/external-name" +kubebuilder:printcolumn:name="AGE",type="date",JSONPath=".metadata.creationTimestamp" +kubebuilder:resource:scope=Cluster,categories={crossplane,managed,azure}

func (*LinuxVirtualMachine) DeepCopy

func (in *LinuxVirtualMachine) DeepCopy() *LinuxVirtualMachine

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

func (*LinuxVirtualMachine) DeepCopyInto

func (in *LinuxVirtualMachine) DeepCopyInto(out *LinuxVirtualMachine)

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

func (*LinuxVirtualMachine) DeepCopyObject

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

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

func (*LinuxVirtualMachine) GetCondition

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

GetCondition of this LinuxVirtualMachine.

func (*LinuxVirtualMachine) GetConnectionDetailsMapping

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

GetConnectionDetailsMapping for this LinuxVirtualMachine

func (*LinuxVirtualMachine) GetDeletionPolicy

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

GetDeletionPolicy of this LinuxVirtualMachine.

func (*LinuxVirtualMachine) GetID

func (tr *LinuxVirtualMachine) GetID() string

GetID returns ID of underlying Terraform resource of this LinuxVirtualMachine

func (*LinuxVirtualMachine) GetInitParameters added in v0.35.0

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

GetInitParameters of this LinuxVirtualMachine

func (*LinuxVirtualMachine) GetManagementPolicies added in v0.35.0

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

GetManagementPolicies of this LinuxVirtualMachine.

func (*LinuxVirtualMachine) GetMergedParameters added in v0.40.0

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

GetInitParameters of this LinuxVirtualMachine

func (*LinuxVirtualMachine) GetObservation

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

GetObservation of this LinuxVirtualMachine

func (*LinuxVirtualMachine) GetParameters

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

GetParameters of this LinuxVirtualMachine

func (*LinuxVirtualMachine) GetProviderConfigReference

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

GetProviderConfigReference of this LinuxVirtualMachine.

func (*LinuxVirtualMachine) GetPublishConnectionDetailsTo

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

GetPublishConnectionDetailsTo of this LinuxVirtualMachine.

func (*LinuxVirtualMachine) GetTerraformResourceType

func (mg *LinuxVirtualMachine) GetTerraformResourceType() string

GetTerraformResourceType returns Terraform resource type for this LinuxVirtualMachine

func (*LinuxVirtualMachine) GetTerraformSchemaVersion

func (tr *LinuxVirtualMachine) GetTerraformSchemaVersion() int

GetTerraformSchemaVersion returns the associated Terraform schema version

func (*LinuxVirtualMachine) GetWriteConnectionSecretToReference

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

GetWriteConnectionSecretToReference of this LinuxVirtualMachine.

func (*LinuxVirtualMachine) Hub added in v0.42.1

func (tr *LinuxVirtualMachine) Hub()

Hub marks this type as a conversion hub.

func (*LinuxVirtualMachine) LateInitialize

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

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

func (*LinuxVirtualMachine) ResolveReferences

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

ResolveReferences of this LinuxVirtualMachine.

func (*LinuxVirtualMachine) SetConditions

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

SetConditions of this LinuxVirtualMachine.

func (*LinuxVirtualMachine) SetDeletionPolicy

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

SetDeletionPolicy of this LinuxVirtualMachine.

func (*LinuxVirtualMachine) SetManagementPolicies added in v0.35.0

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

SetManagementPolicies of this LinuxVirtualMachine.

func (*LinuxVirtualMachine) SetObservation

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

SetObservation for this LinuxVirtualMachine

func (*LinuxVirtualMachine) SetParameters

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

SetParameters for this LinuxVirtualMachine

func (*LinuxVirtualMachine) SetProviderConfigReference

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

SetProviderConfigReference of this LinuxVirtualMachine.

func (*LinuxVirtualMachine) SetPublishConnectionDetailsTo

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

SetPublishConnectionDetailsTo of this LinuxVirtualMachine.

func (*LinuxVirtualMachine) SetWriteConnectionSecretToReference

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

SetWriteConnectionSecretToReference of this LinuxVirtualMachine.

type LinuxVirtualMachineGalleryApplicationInitParameters added in v0.35.0

type LinuxVirtualMachineGalleryApplicationInitParameters struct {

	// Specifies whether the version will be automatically updated for the VM when a new Gallery Application version is available in PIR/SIG. Defaults to false.
	AutomaticUpgradeEnabled *bool `json:"automaticUpgradeEnabled,omitempty" tf:"automatic_upgrade_enabled,omitempty"`

	// Specifies the URI to an Azure Blob that will replace the default configuration for the package if provided.
	ConfigurationBlobURI *string `json:"configurationBlobUri,omitempty" tf:"configuration_blob_uri,omitempty"`

	// Specifies the order in which the packages have to be installed. Possible values are between 0 and 2,147,483,647.
	Order *float64 `json:"order,omitempty" tf:"order,omitempty"`

	// Specifies a passthrough value for more generic context. This field can be any valid string value.
	Tag *string `json:"tag,omitempty" tf:"tag,omitempty"`

	// Specifies whether any failure for any operation in the VmApplication will fail the deployment of the VM. Defaults to false.
	TreatFailureAsDeploymentFailureEnabled *bool `json:"treatFailureAsDeploymentFailureEnabled,omitempty" tf:"treat_failure_as_deployment_failure_enabled,omitempty"`

	// Specifies the Gallery Application Version resource ID.
	VersionID *string `json:"versionId,omitempty" tf:"version_id,omitempty"`
}

func (*LinuxVirtualMachineGalleryApplicationInitParameters) DeepCopy added in v0.35.0

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

func (*LinuxVirtualMachineGalleryApplicationInitParameters) DeepCopyInto added in v0.35.0

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

type LinuxVirtualMachineGalleryApplicationObservation added in v0.28.0

type LinuxVirtualMachineGalleryApplicationObservation struct {

	// Specifies whether the version will be automatically updated for the VM when a new Gallery Application version is available in PIR/SIG. Defaults to false.
	AutomaticUpgradeEnabled *bool `json:"automaticUpgradeEnabled,omitempty" tf:"automatic_upgrade_enabled,omitempty"`

	// Specifies the URI to an Azure Blob that will replace the default configuration for the package if provided.
	ConfigurationBlobURI *string `json:"configurationBlobUri,omitempty" tf:"configuration_blob_uri,omitempty"`

	// Specifies the order in which the packages have to be installed. Possible values are between 0 and 2,147,483,647.
	Order *float64 `json:"order,omitempty" tf:"order,omitempty"`

	// Specifies a passthrough value for more generic context. This field can be any valid string value.
	Tag *string `json:"tag,omitempty" tf:"tag,omitempty"`

	// Specifies whether any failure for any operation in the VmApplication will fail the deployment of the VM. Defaults to false.
	TreatFailureAsDeploymentFailureEnabled *bool `json:"treatFailureAsDeploymentFailureEnabled,omitempty" tf:"treat_failure_as_deployment_failure_enabled,omitempty"`

	// Specifies the Gallery Application Version resource ID.
	VersionID *string `json:"versionId,omitempty" tf:"version_id,omitempty"`
}

func (*LinuxVirtualMachineGalleryApplicationObservation) DeepCopy added in v0.28.0

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

func (*LinuxVirtualMachineGalleryApplicationObservation) DeepCopyInto added in v0.28.0

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

type LinuxVirtualMachineGalleryApplicationParameters added in v0.28.0

type LinuxVirtualMachineGalleryApplicationParameters struct {

	// Specifies whether the version will be automatically updated for the VM when a new Gallery Application version is available in PIR/SIG. Defaults to false.
	// +kubebuilder:validation:Optional
	AutomaticUpgradeEnabled *bool `json:"automaticUpgradeEnabled,omitempty" tf:"automatic_upgrade_enabled,omitempty"`

	// Specifies the URI to an Azure Blob that will replace the default configuration for the package if provided.
	// +kubebuilder:validation:Optional
	ConfigurationBlobURI *string `json:"configurationBlobUri,omitempty" tf:"configuration_blob_uri,omitempty"`

	// Specifies the order in which the packages have to be installed. Possible values are between 0 and 2,147,483,647.
	// +kubebuilder:validation:Optional
	Order *float64 `json:"order,omitempty" tf:"order,omitempty"`

	// Specifies a passthrough value for more generic context. This field can be any valid string value.
	// +kubebuilder:validation:Optional
	Tag *string `json:"tag,omitempty" tf:"tag,omitempty"`

	// Specifies whether any failure for any operation in the VmApplication will fail the deployment of the VM. Defaults to false.
	// +kubebuilder:validation:Optional
	TreatFailureAsDeploymentFailureEnabled *bool `json:"treatFailureAsDeploymentFailureEnabled,omitempty" tf:"treat_failure_as_deployment_failure_enabled,omitempty"`

	// Specifies the Gallery Application Version resource ID.
	// +kubebuilder:validation:Optional
	VersionID *string `json:"versionId" tf:"version_id,omitempty"`
}

func (*LinuxVirtualMachineGalleryApplicationParameters) DeepCopy added in v0.28.0

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

func (*LinuxVirtualMachineGalleryApplicationParameters) DeepCopyInto added in v0.28.0

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

type LinuxVirtualMachineIdentityInitParameters added in v0.35.0

type LinuxVirtualMachineIdentityInitParameters struct {

	// Specifies a list of User Assigned Managed Identity IDs to be assigned to this Linux Virtual Machine.
	// +listType=set
	IdentityIds []*string `json:"identityIds,omitempty" tf:"identity_ids,omitempty"`

	// Specifies the type of Managed Service Identity that should be configured on this Linux Virtual Machine. Possible values are SystemAssigned, UserAssigned, SystemAssigned, UserAssigned (to enable both).
	Type *string `json:"type,omitempty" tf:"type,omitempty"`
}

func (*LinuxVirtualMachineIdentityInitParameters) DeepCopy added in v0.35.0

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

func (*LinuxVirtualMachineIdentityInitParameters) DeepCopyInto added in v0.35.0

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

type LinuxVirtualMachineIdentityObservation

type LinuxVirtualMachineIdentityObservation struct {

	// Specifies a list of User Assigned Managed Identity IDs to be assigned to this Linux Virtual Machine.
	// +listType=set
	IdentityIds []*string `json:"identityIds,omitempty" tf:"identity_ids,omitempty"`

	// 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 Linux Virtual Machine. Possible values are SystemAssigned, UserAssigned, SystemAssigned, UserAssigned (to enable both).
	Type *string `json:"type,omitempty" tf:"type,omitempty"`
}

func (*LinuxVirtualMachineIdentityObservation) DeepCopy

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

func (*LinuxVirtualMachineIdentityObservation) DeepCopyInto

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

type LinuxVirtualMachineIdentityParameters

type LinuxVirtualMachineIdentityParameters struct {

	// Specifies a list of User Assigned Managed Identity IDs to be assigned to this Linux Virtual Machine.
	// +kubebuilder:validation:Optional
	// +listType=set
	IdentityIds []*string `json:"identityIds,omitempty" tf:"identity_ids,omitempty"`

	// Specifies the type of Managed Service Identity that should be configured on this Linux Virtual Machine. Possible values are SystemAssigned, UserAssigned, SystemAssigned, UserAssigned (to enable both).
	// +kubebuilder:validation:Optional
	Type *string `json:"type" tf:"type,omitempty"`
}

func (*LinuxVirtualMachineIdentityParameters) DeepCopy

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

func (*LinuxVirtualMachineIdentityParameters) DeepCopyInto

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

type LinuxVirtualMachineInitParameters added in v0.35.0

type LinuxVirtualMachineInitParameters struct {

	// A additional_capabilities block as defined below.
	AdditionalCapabilities []AdditionalCapabilitiesInitParameters `json:"additionalCapabilities,omitempty" tf:"additional_capabilities,omitempty"`

	// One or more admin_ssh_key blocks as defined below. Changing this forces a new resource to be created.
	AdminSSHKey []AdminSSHKeyInitParameters `json:"adminSshKey,omitempty" tf:"admin_ssh_key,omitempty"`

	// The username of the local administrator used for the Virtual Machine. Changing this forces a new resource to be created.
	AdminUsername *string `json:"adminUsername,omitempty" tf:"admin_username,omitempty"`

	// Should Extension Operations be allowed on this Virtual Machine? Defaults to true.
	AllowExtensionOperations *bool `json:"allowExtensionOperations,omitempty" tf:"allow_extension_operations,omitempty"`

	// Specifies the ID of the Availability Set in which the Virtual Machine should exist. Changing this forces a new resource to be created.
	AvailabilitySetID *string `json:"availabilitySetId,omitempty" tf:"availability_set_id,omitempty"`

	// A boot_diagnostics block as defined below.
	BootDiagnostics []BootDiagnosticsInitParameters `json:"bootDiagnostics,omitempty" tf:"boot_diagnostics,omitempty"`

	// Specifies whether to skip platform scheduled patching when a user schedule is associated with the VM. Defaults to false.
	BypassPlatformSafetyChecksOnUserScheduleEnabled *bool `` /* 134-byte string literal not displayed */

	// Specifies the ID of the Capacity Reservation Group which the Virtual Machine should be allocated to.
	CapacityReservationGroupID *string `json:"capacityReservationGroupId,omitempty" tf:"capacity_reservation_group_id,omitempty"`

	// Specifies the Hostname which should be used for this Virtual Machine. If unspecified this defaults to the value for the name field. If the value of the name field is not a valid computer_name, then you must specify computer_name. Changing this forces a new resource to be created.
	ComputerName *string `json:"computerName,omitempty" tf:"computer_name,omitempty"`

	// The ID of a Dedicated Host Group that this Linux Virtual Machine should be run within. Conflicts with dedicated_host_id.
	DedicatedHostGroupID *string `json:"dedicatedHostGroupId,omitempty" tf:"dedicated_host_group_id,omitempty"`

	// The ID of a Dedicated Host where this machine should be run on. Conflicts with dedicated_host_group_id.
	DedicatedHostID *string `json:"dedicatedHostId,omitempty" tf:"dedicated_host_id,omitempty"`

	// Should Password Authentication be disabled on this Virtual Machine? Defaults to true. Changing this forces a new resource to be created.
	DisablePasswordAuthentication *bool `json:"disablePasswordAuthentication,omitempty" tf:"disable_password_authentication,omitempty"`

	// Specifies the Disk Controller Type used for this Virtual Machine. Possible values are SCSI and NVMe.
	DiskControllerType *string `json:"diskControllerType,omitempty" tf:"disk_controller_type,omitempty"`

	// Specifies the Edge Zone within the Azure Region where this Linux Virtual Machine should exist. Changing this forces a new Linux Virtual Machine to be created.
	EdgeZone *string `json:"edgeZone,omitempty" tf:"edge_zone,omitempty"`

	// Should all of the disks (including the temp disk) attached to this Virtual Machine be encrypted by enabling Encryption at Host?
	EncryptionAtHostEnabled *bool `json:"encryptionAtHostEnabled,omitempty" tf:"encryption_at_host_enabled,omitempty"`

	// Specifies what should happen when the Virtual Machine is evicted for price reasons when using a Spot instance. Possible values are Deallocate and Delete. Changing this forces a new resource to be created.
	EvictionPolicy *string `json:"evictionPolicy,omitempty" tf:"eviction_policy,omitempty"`

	// Specifies the duration allocated for all extensions to start. The time duration should be between 15 minutes and 120 minutes (inclusive) and should be specified in ISO 8601 format. Defaults to PT1H30M.
	ExtensionsTimeBudget *string `json:"extensionsTimeBudget,omitempty" tf:"extensions_time_budget,omitempty"`

	// One or more gallery_application blocks as defined below.
	GalleryApplication []LinuxVirtualMachineGalleryApplicationInitParameters `json:"galleryApplication,omitempty" tf:"gallery_application,omitempty"`

	// An identity block as defined below.
	Identity []LinuxVirtualMachineIdentityInitParameters `json:"identity,omitempty" tf:"identity,omitempty"`

	// Specifies the BYOL Type for this Virtual Machine. Possible values are RHEL_BYOS and SLES_BYOS.
	LicenseType *string `json:"licenseType,omitempty" tf:"license_type,omitempty"`

	// The Azure location where the Linux Virtual Machine should exist. Changing this forces a new resource to be created.
	Location *string `json:"location,omitempty" tf:"location,omitempty"`

	// The maximum price you're willing to pay for this Virtual Machine, in US Dollars; which must be greater than the current spot price. If this bid price falls below the current spot price the Virtual Machine will be evicted using the eviction_policy. Defaults to -1, which means that the Virtual Machine should not be evicted for price reasons.
	MaxBidPrice *float64 `json:"maxBidPrice,omitempty" tf:"max_bid_price,omitempty"`

	// . A list of Network Interface IDs which should be attached to this Virtual Machine. The first Network Interface ID in this list will be the Primary Network Interface on the Virtual Machine.
	// +crossplane:generate:reference:type=github.com/upbound/provider-azure/apis/network/v1beta1.NetworkInterface
	// +crossplane:generate:reference:extractor=github.com/upbound/provider-azure/apis/rconfig.ExtractResourceID()
	NetworkInterfaceIds []*string `json:"networkInterfaceIds,omitempty" tf:"network_interface_ids,omitempty"`

	// References to NetworkInterface in network to populate networkInterfaceIds.
	// +kubebuilder:validation:Optional
	NetworkInterfaceIdsRefs []v1.Reference `json:"networkInterfaceIdsRefs,omitempty" tf:"-"`

	// Selector for a list of NetworkInterface in network to populate networkInterfaceIds.
	// +kubebuilder:validation:Optional
	NetworkInterfaceIdsSelector *v1.Selector `json:"networkInterfaceIdsSelector,omitempty" tf:"-"`

	// A os_disk block as defined below.
	OsDisk []LinuxVirtualMachineOsDiskInitParameters `json:"osDisk,omitempty" tf:"os_disk,omitempty"`

	// A os_image_notification block as defined below.
	OsImageNotification []OsImageNotificationInitParameters `json:"osImageNotification,omitempty" tf:"os_image_notification,omitempty"`

	// Specifies the mode of VM Guest Patching for the Virtual Machine. Possible values are AutomaticByPlatform or ImageDefault. Defaults to ImageDefault.
	PatchAssessmentMode *string `json:"patchAssessmentMode,omitempty" tf:"patch_assessment_mode,omitempty"`

	// Specifies the mode of in-guest patching to this Linux Virtual Machine. Possible values are AutomaticByPlatform and ImageDefault. Defaults to ImageDefault. For more information on patch modes please see the product documentation.
	PatchMode *string `json:"patchMode,omitempty" tf:"patch_mode,omitempty"`

	// A plan block as defined below. Changing this forces a new resource to be created.
	Plan []PlanInitParameters `json:"plan,omitempty" tf:"plan,omitempty"`

	// Specifies the Platform Fault Domain in which this Linux Virtual Machine should be created. Defaults to -1, which means this will be automatically assigned to a fault domain that best maintains balance across the available fault domains. Changing this forces a new Linux Virtual Machine to be created.
	PlatformFaultDomain *float64 `json:"platformFaultDomain,omitempty" tf:"platform_fault_domain,omitempty"`

	// Specifies the priority of this Virtual Machine. Possible values are Regular and Spot. Defaults to Regular. Changing this forces a new resource to be created.
	Priority *string `json:"priority,omitempty" tf:"priority,omitempty"`

	// Should the Azure VM Agent be provisioned on this Virtual Machine? Defaults to true. Changing this forces a new resource to be created.
	ProvisionVMAgent *bool `json:"provisionVmAgent,omitempty" tf:"provision_vm_agent,omitempty"`

	// The ID of the Proximity Placement Group which the Virtual Machine should be assigned to.
	ProximityPlacementGroupID *string `json:"proximityPlacementGroupId,omitempty" tf:"proximity_placement_group_id,omitempty"`

	// Specifies the reboot setting for platform scheduled patching. Possible values are Always, IfRequired and Never.
	RebootSetting *string `json:"rebootSetting,omitempty" tf:"reboot_setting,omitempty"`

	// One or more secret blocks as defined below.
	Secret []SecretInitParameters `json:"secret,omitempty" tf:"secret,omitempty"`

	// Specifies whether secure boot should be enabled on the virtual machine. Changing this forces a new resource to be created.
	SecureBootEnabled *bool `json:"secureBootEnabled,omitempty" tf:"secure_boot_enabled,omitempty"`

	// The SKU which should be used for this Virtual Machine, such as Standard_F2.
	Size *string `json:"size,omitempty" tf:"size,omitempty"`

	// The ID of the Image which this Virtual Machine should be created from. Changing this forces a new resource to be created. Possible Image ID types include Image IDs, Shared Image IDs, Shared Image Version IDs, Community Gallery Image IDs, Community Gallery Image Version IDs, Shared Gallery Image IDs and Shared Gallery Image Version IDs.
	SourceImageID *string `json:"sourceImageId,omitempty" tf:"source_image_id,omitempty"`

	// A source_image_reference block as defined below. Changing this forces a new resource to be created.
	SourceImageReference []SourceImageReferenceInitParameters `json:"sourceImageReference,omitempty" tf:"source_image_reference,omitempty"`

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

	// A termination_notification block as defined below.
	TerminationNotification []TerminationNotificationInitParameters `json:"terminationNotification,omitempty" tf:"termination_notification,omitempty"`

	// The Base64-Encoded User Data which should be used for this Virtual Machine.
	UserData *string `json:"userData,omitempty" tf:"user_data,omitempty"`

	// Specifies whether VMAgent Platform Updates is enabled. Defaults to false.
	VMAgentPlatformUpdatesEnabled *bool `json:"vmAgentPlatformUpdatesEnabled,omitempty" tf:"vm_agent_platform_updates_enabled,omitempty"`

	// Specifies the Orchestrated Virtual Machine Scale Set that this Virtual Machine should be created within.
	VirtualMachineScaleSetID *string `json:"virtualMachineScaleSetId,omitempty" tf:"virtual_machine_scale_set_id,omitempty"`

	// Specifies whether vTPM should be enabled on the virtual machine. Changing this forces a new resource to be created.
	VtpmEnabled *bool `json:"vtpmEnabled,omitempty" tf:"vtpm_enabled,omitempty"`

	// Specifies the Availability Zones in which this Linux Virtual Machine should be located. Changing this forces a new Linux Virtual Machine to be created.
	Zone *string `json:"zone,omitempty" tf:"zone,omitempty"`
}

func (*LinuxVirtualMachineInitParameters) DeepCopy added in v0.35.0

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

func (*LinuxVirtualMachineInitParameters) DeepCopyInto added in v0.35.0

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

type LinuxVirtualMachineList

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

LinuxVirtualMachineList contains a list of LinuxVirtualMachines

func (*LinuxVirtualMachineList) DeepCopy

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

func (*LinuxVirtualMachineList) DeepCopyInto

func (in *LinuxVirtualMachineList) DeepCopyInto(out *LinuxVirtualMachineList)

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

func (*LinuxVirtualMachineList) DeepCopyObject

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

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

func (*LinuxVirtualMachineList) GetItems

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

GetItems of this LinuxVirtualMachineList.

type LinuxVirtualMachineObservation

type LinuxVirtualMachineObservation struct {

	// A additional_capabilities block as defined below.
	AdditionalCapabilities []AdditionalCapabilitiesObservation `json:"additionalCapabilities,omitempty" tf:"additional_capabilities,omitempty"`

	// One or more admin_ssh_key blocks as defined below. Changing this forces a new resource to be created.
	AdminSSHKey []AdminSSHKeyObservation `json:"adminSshKey,omitempty" tf:"admin_ssh_key,omitempty"`

	// The username of the local administrator used for the Virtual Machine. Changing this forces a new resource to be created.
	AdminUsername *string `json:"adminUsername,omitempty" tf:"admin_username,omitempty"`

	// Should Extension Operations be allowed on this Virtual Machine? Defaults to true.
	AllowExtensionOperations *bool `json:"allowExtensionOperations,omitempty" tf:"allow_extension_operations,omitempty"`

	// Specifies the ID of the Availability Set in which the Virtual Machine should exist. Changing this forces a new resource to be created.
	AvailabilitySetID *string `json:"availabilitySetId,omitempty" tf:"availability_set_id,omitempty"`

	// A boot_diagnostics block as defined below.
	BootDiagnostics []BootDiagnosticsObservation `json:"bootDiagnostics,omitempty" tf:"boot_diagnostics,omitempty"`

	// Specifies whether to skip platform scheduled patching when a user schedule is associated with the VM. Defaults to false.
	BypassPlatformSafetyChecksOnUserScheduleEnabled *bool `` /* 134-byte string literal not displayed */

	// Specifies the ID of the Capacity Reservation Group which the Virtual Machine should be allocated to.
	CapacityReservationGroupID *string `json:"capacityReservationGroupId,omitempty" tf:"capacity_reservation_group_id,omitempty"`

	// Specifies the Hostname which should be used for this Virtual Machine. If unspecified this defaults to the value for the name field. If the value of the name field is not a valid computer_name, then you must specify computer_name. Changing this forces a new resource to be created.
	ComputerName *string `json:"computerName,omitempty" tf:"computer_name,omitempty"`

	// The ID of a Dedicated Host Group that this Linux Virtual Machine should be run within. Conflicts with dedicated_host_id.
	DedicatedHostGroupID *string `json:"dedicatedHostGroupId,omitempty" tf:"dedicated_host_group_id,omitempty"`

	// The ID of a Dedicated Host where this machine should be run on. Conflicts with dedicated_host_group_id.
	DedicatedHostID *string `json:"dedicatedHostId,omitempty" tf:"dedicated_host_id,omitempty"`

	// Should Password Authentication be disabled on this Virtual Machine? Defaults to true. Changing this forces a new resource to be created.
	DisablePasswordAuthentication *bool `json:"disablePasswordAuthentication,omitempty" tf:"disable_password_authentication,omitempty"`

	// Specifies the Disk Controller Type used for this Virtual Machine. Possible values are SCSI and NVMe.
	DiskControllerType *string `json:"diskControllerType,omitempty" tf:"disk_controller_type,omitempty"`

	// Specifies the Edge Zone within the Azure Region where this Linux Virtual Machine should exist. Changing this forces a new Linux Virtual Machine to be created.
	EdgeZone *string `json:"edgeZone,omitempty" tf:"edge_zone,omitempty"`

	// Should all of the disks (including the temp disk) attached to this Virtual Machine be encrypted by enabling Encryption at Host?
	EncryptionAtHostEnabled *bool `json:"encryptionAtHostEnabled,omitempty" tf:"encryption_at_host_enabled,omitempty"`

	// Specifies what should happen when the Virtual Machine is evicted for price reasons when using a Spot instance. Possible values are Deallocate and Delete. Changing this forces a new resource to be created.
	EvictionPolicy *string `json:"evictionPolicy,omitempty" tf:"eviction_policy,omitempty"`

	// Specifies the duration allocated for all extensions to start. The time duration should be between 15 minutes and 120 minutes (inclusive) and should be specified in ISO 8601 format. Defaults to PT1H30M.
	ExtensionsTimeBudget *string `json:"extensionsTimeBudget,omitempty" tf:"extensions_time_budget,omitempty"`

	// One or more gallery_application blocks as defined below.
	GalleryApplication []LinuxVirtualMachineGalleryApplicationObservation `json:"galleryApplication,omitempty" tf:"gallery_application,omitempty"`

	// The ID of the Linux Virtual Machine.
	ID *string `json:"id,omitempty" tf:"id,omitempty"`

	// An identity block as defined below.
	Identity []LinuxVirtualMachineIdentityObservation `json:"identity,omitempty" tf:"identity,omitempty"`

	// Specifies the BYOL Type for this Virtual Machine. Possible values are RHEL_BYOS and SLES_BYOS.
	LicenseType *string `json:"licenseType,omitempty" tf:"license_type,omitempty"`

	// The Azure location where the Linux Virtual Machine should exist. Changing this forces a new resource to be created.
	Location *string `json:"location,omitempty" tf:"location,omitempty"`

	// The maximum price you're willing to pay for this Virtual Machine, in US Dollars; which must be greater than the current spot price. If this bid price falls below the current spot price the Virtual Machine will be evicted using the eviction_policy. Defaults to -1, which means that the Virtual Machine should not be evicted for price reasons.
	MaxBidPrice *float64 `json:"maxBidPrice,omitempty" tf:"max_bid_price,omitempty"`

	// . A list of Network Interface IDs which should be attached to this Virtual Machine. The first Network Interface ID in this list will be the Primary Network Interface on the Virtual Machine.
	NetworkInterfaceIds []*string `json:"networkInterfaceIds,omitempty" tf:"network_interface_ids,omitempty"`

	// A os_disk block as defined below.
	OsDisk []LinuxVirtualMachineOsDiskObservation `json:"osDisk,omitempty" tf:"os_disk,omitempty"`

	// A os_image_notification block as defined below.
	OsImageNotification []OsImageNotificationObservation `json:"osImageNotification,omitempty" tf:"os_image_notification,omitempty"`

	// Specifies the mode of VM Guest Patching for the Virtual Machine. Possible values are AutomaticByPlatform or ImageDefault. Defaults to ImageDefault.
	PatchAssessmentMode *string `json:"patchAssessmentMode,omitempty" tf:"patch_assessment_mode,omitempty"`

	// Specifies the mode of in-guest patching to this Linux Virtual Machine. Possible values are AutomaticByPlatform and ImageDefault. Defaults to ImageDefault. For more information on patch modes please see the product documentation.
	PatchMode *string `json:"patchMode,omitempty" tf:"patch_mode,omitempty"`

	// A plan block as defined below. Changing this forces a new resource to be created.
	Plan []PlanObservation `json:"plan,omitempty" tf:"plan,omitempty"`

	// Specifies the Platform Fault Domain in which this Linux Virtual Machine should be created. Defaults to -1, which means this will be automatically assigned to a fault domain that best maintains balance across the available fault domains. Changing this forces a new Linux Virtual Machine to be created.
	PlatformFaultDomain *float64 `json:"platformFaultDomain,omitempty" tf:"platform_fault_domain,omitempty"`

	// Specifies the priority of this Virtual Machine. Possible values are Regular and Spot. Defaults to Regular. Changing this forces a new resource to be created.
	Priority *string `json:"priority,omitempty" tf:"priority,omitempty"`

	// The Primary Private IP Address assigned to this Virtual Machine.
	PrivateIPAddress *string `json:"privateIpAddress,omitempty" tf:"private_ip_address,omitempty"`

	// A list of Private IP Addresses assigned to this Virtual Machine.
	PrivateIPAddresses []*string `json:"privateIpAddresses,omitempty" tf:"private_ip_addresses,omitempty"`

	// Should the Azure VM Agent be provisioned on this Virtual Machine? Defaults to true. Changing this forces a new resource to be created.
	ProvisionVMAgent *bool `json:"provisionVmAgent,omitempty" tf:"provision_vm_agent,omitempty"`

	// The ID of the Proximity Placement Group which the Virtual Machine should be assigned to.
	ProximityPlacementGroupID *string `json:"proximityPlacementGroupId,omitempty" tf:"proximity_placement_group_id,omitempty"`

	// The Primary Public IP Address assigned to this Virtual Machine.
	PublicIPAddress *string `json:"publicIpAddress,omitempty" tf:"public_ip_address,omitempty"`

	// A list of the Public IP Addresses assigned to this Virtual Machine.
	PublicIPAddresses []*string `json:"publicIpAddresses,omitempty" tf:"public_ip_addresses,omitempty"`

	// Specifies the reboot setting for platform scheduled patching. Possible values are Always, IfRequired and Never.
	RebootSetting *string `json:"rebootSetting,omitempty" tf:"reboot_setting,omitempty"`

	// The name of the Resource Group in which the Linux Virtual Machine should be exist. Changing this forces a new resource to be created.
	ResourceGroupName *string `json:"resourceGroupName,omitempty" tf:"resource_group_name,omitempty"`

	// One or more secret blocks as defined below.
	Secret []SecretObservation `json:"secret,omitempty" tf:"secret,omitempty"`

	// Specifies whether secure boot should be enabled on the virtual machine. Changing this forces a new resource to be created.
	SecureBootEnabled *bool `json:"secureBootEnabled,omitempty" tf:"secure_boot_enabled,omitempty"`

	// The SKU which should be used for this Virtual Machine, such as Standard_F2.
	Size *string `json:"size,omitempty" tf:"size,omitempty"`

	// The ID of the Image which this Virtual Machine should be created from. Changing this forces a new resource to be created. Possible Image ID types include Image IDs, Shared Image IDs, Shared Image Version IDs, Community Gallery Image IDs, Community Gallery Image Version IDs, Shared Gallery Image IDs and Shared Gallery Image Version IDs.
	SourceImageID *string `json:"sourceImageId,omitempty" tf:"source_image_id,omitempty"`

	// A source_image_reference block as defined below. Changing this forces a new resource to be created.
	SourceImageReference []SourceImageReferenceObservation `json:"sourceImageReference,omitempty" tf:"source_image_reference,omitempty"`

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

	// A termination_notification block as defined below.
	TerminationNotification []TerminationNotificationObservation `json:"terminationNotification,omitempty" tf:"termination_notification,omitempty"`

	// The Base64-Encoded User Data which should be used for this Virtual Machine.
	UserData *string `json:"userData,omitempty" tf:"user_data,omitempty"`

	// Specifies whether VMAgent Platform Updates is enabled. Defaults to false.
	VMAgentPlatformUpdatesEnabled *bool `json:"vmAgentPlatformUpdatesEnabled,omitempty" tf:"vm_agent_platform_updates_enabled,omitempty"`

	// A 128-bit identifier which uniquely identifies this Virtual Machine.
	VirtualMachineID *string `json:"virtualMachineId,omitempty" tf:"virtual_machine_id,omitempty"`

	// Specifies the Orchestrated Virtual Machine Scale Set that this Virtual Machine should be created within.
	VirtualMachineScaleSetID *string `json:"virtualMachineScaleSetId,omitempty" tf:"virtual_machine_scale_set_id,omitempty"`

	// Specifies whether vTPM should be enabled on the virtual machine. Changing this forces a new resource to be created.
	VtpmEnabled *bool `json:"vtpmEnabled,omitempty" tf:"vtpm_enabled,omitempty"`

	// Specifies the Availability Zones in which this Linux Virtual Machine should be located. Changing this forces a new Linux Virtual Machine to be created.
	Zone *string `json:"zone,omitempty" tf:"zone,omitempty"`
}

func (*LinuxVirtualMachineObservation) DeepCopy

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

func (*LinuxVirtualMachineObservation) DeepCopyInto

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

type LinuxVirtualMachineOsDiskInitParameters added in v0.35.0

type LinuxVirtualMachineOsDiskInitParameters struct {

	// The Type of Caching which should be used for the Internal OS Disk. Possible values are None, ReadOnly and ReadWrite.
	Caching *string `json:"caching,omitempty" tf:"caching,omitempty"`

	// A diff_disk_settings block as defined above. Changing this forces a new resource to be created.
	DiffDiskSettings []DiffDiskSettingsInitParameters `json:"diffDiskSettings,omitempty" tf:"diff_disk_settings,omitempty"`

	// The ID of the Disk Encryption Set which should be used to Encrypt this OS Disk. Conflicts with secure_vm_disk_encryption_set_id.
	DiskEncryptionSetID *string `json:"diskEncryptionSetId,omitempty" tf:"disk_encryption_set_id,omitempty"`

	// The Size of the Internal OS Disk in GB, if you wish to vary from the size used in the image this Virtual Machine is sourced from.
	DiskSizeGb *float64 `json:"diskSizeGb,omitempty" tf:"disk_size_gb,omitempty"`

	// The name which should be used for the Internal OS Disk. Changing this forces a new resource to be created.
	Name *string `json:"name,omitempty" tf:"name,omitempty"`

	// The ID of the Disk Encryption Set which should be used to Encrypt this OS Disk when the Virtual Machine is a Confidential VM. Conflicts with disk_encryption_set_id. Changing this forces a new resource to be created.
	SecureVMDiskEncryptionSetID *string `json:"secureVmDiskEncryptionSetId,omitempty" tf:"secure_vm_disk_encryption_set_id,omitempty"`

	// Encryption Type when the Virtual Machine is a Confidential VM. Possible values are VMGuestStateOnly and DiskWithVMGuestState. Changing this forces a new resource to be created.
	SecurityEncryptionType *string `json:"securityEncryptionType,omitempty" tf:"security_encryption_type,omitempty"`

	// The Type of Storage Account which should back this the Internal OS Disk. Possible values are Standard_LRS, StandardSSD_LRS, Premium_LRS, StandardSSD_ZRS and Premium_ZRS. Changing this forces a new resource to be created.
	StorageAccountType *string `json:"storageAccountType,omitempty" tf:"storage_account_type,omitempty"`

	// Should Write Accelerator be Enabled for this OS Disk? Defaults to false.
	WriteAcceleratorEnabled *bool `json:"writeAcceleratorEnabled,omitempty" tf:"write_accelerator_enabled,omitempty"`
}

func (*LinuxVirtualMachineOsDiskInitParameters) DeepCopy added in v0.35.0

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

func (*LinuxVirtualMachineOsDiskInitParameters) DeepCopyInto added in v0.35.0

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

type LinuxVirtualMachineOsDiskObservation

type LinuxVirtualMachineOsDiskObservation struct {

	// The Type of Caching which should be used for the Internal OS Disk. Possible values are None, ReadOnly and ReadWrite.
	Caching *string `json:"caching,omitempty" tf:"caching,omitempty"`

	// A diff_disk_settings block as defined above. Changing this forces a new resource to be created.
	DiffDiskSettings []DiffDiskSettingsObservation `json:"diffDiskSettings,omitempty" tf:"diff_disk_settings,omitempty"`

	// The ID of the Disk Encryption Set which should be used to Encrypt this OS Disk. Conflicts with secure_vm_disk_encryption_set_id.
	DiskEncryptionSetID *string `json:"diskEncryptionSetId,omitempty" tf:"disk_encryption_set_id,omitempty"`

	// The Size of the Internal OS Disk in GB, if you wish to vary from the size used in the image this Virtual Machine is sourced from.
	DiskSizeGb *float64 `json:"diskSizeGb,omitempty" tf:"disk_size_gb,omitempty"`

	// The name which should be used for the Internal OS Disk. Changing this forces a new resource to be created.
	Name *string `json:"name,omitempty" tf:"name,omitempty"`

	// The ID of the Disk Encryption Set which should be used to Encrypt this OS Disk when the Virtual Machine is a Confidential VM. Conflicts with disk_encryption_set_id. Changing this forces a new resource to be created.
	SecureVMDiskEncryptionSetID *string `json:"secureVmDiskEncryptionSetId,omitempty" tf:"secure_vm_disk_encryption_set_id,omitempty"`

	// Encryption Type when the Virtual Machine is a Confidential VM. Possible values are VMGuestStateOnly and DiskWithVMGuestState. Changing this forces a new resource to be created.
	SecurityEncryptionType *string `json:"securityEncryptionType,omitempty" tf:"security_encryption_type,omitempty"`

	// The Type of Storage Account which should back this the Internal OS Disk. Possible values are Standard_LRS, StandardSSD_LRS, Premium_LRS, StandardSSD_ZRS and Premium_ZRS. Changing this forces a new resource to be created.
	StorageAccountType *string `json:"storageAccountType,omitempty" tf:"storage_account_type,omitempty"`

	// Should Write Accelerator be Enabled for this OS Disk? Defaults to false.
	WriteAcceleratorEnabled *bool `json:"writeAcceleratorEnabled,omitempty" tf:"write_accelerator_enabled,omitempty"`
}

func (*LinuxVirtualMachineOsDiskObservation) DeepCopy

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

func (*LinuxVirtualMachineOsDiskObservation) DeepCopyInto

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

type LinuxVirtualMachineOsDiskParameters

type LinuxVirtualMachineOsDiskParameters struct {

	// The Type of Caching which should be used for the Internal OS Disk. Possible values are None, ReadOnly and ReadWrite.
	// +kubebuilder:validation:Optional
	Caching *string `json:"caching" tf:"caching,omitempty"`

	// A diff_disk_settings block as defined above. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	DiffDiskSettings []DiffDiskSettingsParameters `json:"diffDiskSettings,omitempty" tf:"diff_disk_settings,omitempty"`

	// The ID of the Disk Encryption Set which should be used to Encrypt this OS Disk. Conflicts with secure_vm_disk_encryption_set_id.
	// +kubebuilder:validation:Optional
	DiskEncryptionSetID *string `json:"diskEncryptionSetId,omitempty" tf:"disk_encryption_set_id,omitempty"`

	// The Size of the Internal OS Disk in GB, if you wish to vary from the size used in the image this Virtual Machine is sourced from.
	// +kubebuilder:validation:Optional
	DiskSizeGb *float64 `json:"diskSizeGb,omitempty" tf:"disk_size_gb,omitempty"`

	// The name which should be used for the Internal OS Disk. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	Name *string `json:"name,omitempty" tf:"name,omitempty"`

	// The ID of the Disk Encryption Set which should be used to Encrypt this OS Disk when the Virtual Machine is a Confidential VM. Conflicts with disk_encryption_set_id. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	SecureVMDiskEncryptionSetID *string `json:"secureVmDiskEncryptionSetId,omitempty" tf:"secure_vm_disk_encryption_set_id,omitempty"`

	// Encryption Type when the Virtual Machine is a Confidential VM. Possible values are VMGuestStateOnly and DiskWithVMGuestState. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	SecurityEncryptionType *string `json:"securityEncryptionType,omitempty" tf:"security_encryption_type,omitempty"`

	// The Type of Storage Account which should back this the Internal OS Disk. Possible values are Standard_LRS, StandardSSD_LRS, Premium_LRS, StandardSSD_ZRS and Premium_ZRS. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	StorageAccountType *string `json:"storageAccountType" tf:"storage_account_type,omitempty"`

	// Should Write Accelerator be Enabled for this OS Disk? Defaults to false.
	// +kubebuilder:validation:Optional
	WriteAcceleratorEnabled *bool `json:"writeAcceleratorEnabled,omitempty" tf:"write_accelerator_enabled,omitempty"`
}

func (*LinuxVirtualMachineOsDiskParameters) DeepCopy

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

func (*LinuxVirtualMachineOsDiskParameters) DeepCopyInto

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

type LinuxVirtualMachineParameters

type LinuxVirtualMachineParameters struct {

	// A additional_capabilities block as defined below.
	// +kubebuilder:validation:Optional
	AdditionalCapabilities []AdditionalCapabilitiesParameters `json:"additionalCapabilities,omitempty" tf:"additional_capabilities,omitempty"`

	// The Password which should be used for the local-administrator on this Virtual Machine. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	AdminPasswordSecretRef *v1.SecretKeySelector `json:"adminPasswordSecretRef,omitempty" tf:"-"`

	// One or more admin_ssh_key blocks as defined below. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	AdminSSHKey []AdminSSHKeyParameters `json:"adminSshKey,omitempty" tf:"admin_ssh_key,omitempty"`

	// The username of the local administrator used for the Virtual Machine. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	AdminUsername *string `json:"adminUsername,omitempty" tf:"admin_username,omitempty"`

	// Should Extension Operations be allowed on this Virtual Machine? Defaults to true.
	// +kubebuilder:validation:Optional
	AllowExtensionOperations *bool `json:"allowExtensionOperations,omitempty" tf:"allow_extension_operations,omitempty"`

	// Specifies the ID of the Availability Set in which the Virtual Machine should exist. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	AvailabilitySetID *string `json:"availabilitySetId,omitempty" tf:"availability_set_id,omitempty"`

	// A boot_diagnostics block as defined below.
	// +kubebuilder:validation:Optional
	BootDiagnostics []BootDiagnosticsParameters `json:"bootDiagnostics,omitempty" tf:"boot_diagnostics,omitempty"`

	// Specifies whether to skip platform scheduled patching when a user schedule is associated with the VM. Defaults to false.
	// +kubebuilder:validation:Optional
	BypassPlatformSafetyChecksOnUserScheduleEnabled *bool `` /* 134-byte string literal not displayed */

	// Specifies the ID of the Capacity Reservation Group which the Virtual Machine should be allocated to.
	// +kubebuilder:validation:Optional
	CapacityReservationGroupID *string `json:"capacityReservationGroupId,omitempty" tf:"capacity_reservation_group_id,omitempty"`

	// Specifies the Hostname which should be used for this Virtual Machine. If unspecified this defaults to the value for the name field. If the value of the name field is not a valid computer_name, then you must specify computer_name. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	ComputerName *string `json:"computerName,omitempty" tf:"computer_name,omitempty"`

	// The Base64-Encoded Custom Data which should be used for this Virtual Machine. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	CustomDataSecretRef *v1.SecretKeySelector `json:"customDataSecretRef,omitempty" tf:"-"`

	// The ID of a Dedicated Host Group that this Linux Virtual Machine should be run within. Conflicts with dedicated_host_id.
	// +kubebuilder:validation:Optional
	DedicatedHostGroupID *string `json:"dedicatedHostGroupId,omitempty" tf:"dedicated_host_group_id,omitempty"`

	// The ID of a Dedicated Host where this machine should be run on. Conflicts with dedicated_host_group_id.
	// +kubebuilder:validation:Optional
	DedicatedHostID *string `json:"dedicatedHostId,omitempty" tf:"dedicated_host_id,omitempty"`

	// Should Password Authentication be disabled on this Virtual Machine? Defaults to true. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	DisablePasswordAuthentication *bool `json:"disablePasswordAuthentication,omitempty" tf:"disable_password_authentication,omitempty"`

	// Specifies the Disk Controller Type used for this Virtual Machine. Possible values are SCSI and NVMe.
	// +kubebuilder:validation:Optional
	DiskControllerType *string `json:"diskControllerType,omitempty" tf:"disk_controller_type,omitempty"`

	// Specifies the Edge Zone within the Azure Region where this Linux Virtual Machine should exist. Changing this forces a new Linux Virtual Machine to be created.
	// +kubebuilder:validation:Optional
	EdgeZone *string `json:"edgeZone,omitempty" tf:"edge_zone,omitempty"`

	// Should all of the disks (including the temp disk) attached to this Virtual Machine be encrypted by enabling Encryption at Host?
	// +kubebuilder:validation:Optional
	EncryptionAtHostEnabled *bool `json:"encryptionAtHostEnabled,omitempty" tf:"encryption_at_host_enabled,omitempty"`

	// Specifies what should happen when the Virtual Machine is evicted for price reasons when using a Spot instance. Possible values are Deallocate and Delete. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	EvictionPolicy *string `json:"evictionPolicy,omitempty" tf:"eviction_policy,omitempty"`

	// Specifies the duration allocated for all extensions to start. The time duration should be between 15 minutes and 120 minutes (inclusive) and should be specified in ISO 8601 format. Defaults to PT1H30M.
	// +kubebuilder:validation:Optional
	ExtensionsTimeBudget *string `json:"extensionsTimeBudget,omitempty" tf:"extensions_time_budget,omitempty"`

	// One or more gallery_application blocks as defined below.
	// +kubebuilder:validation:Optional
	GalleryApplication []LinuxVirtualMachineGalleryApplicationParameters `json:"galleryApplication,omitempty" tf:"gallery_application,omitempty"`

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

	// Specifies the BYOL Type for this Virtual Machine. Possible values are RHEL_BYOS and SLES_BYOS.
	// +kubebuilder:validation:Optional
	LicenseType *string `json:"licenseType,omitempty" tf:"license_type,omitempty"`

	// The Azure location where the Linux Virtual Machine should exist. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	Location *string `json:"location,omitempty" tf:"location,omitempty"`

	// The maximum price you're willing to pay for this Virtual Machine, in US Dollars; which must be greater than the current spot price. If this bid price falls below the current spot price the Virtual Machine will be evicted using the eviction_policy. Defaults to -1, which means that the Virtual Machine should not be evicted for price reasons.
	// +kubebuilder:validation:Optional
	MaxBidPrice *float64 `json:"maxBidPrice,omitempty" tf:"max_bid_price,omitempty"`

	// . A list of Network Interface IDs which should be attached to this Virtual Machine. The first Network Interface ID in this list will be the Primary Network Interface on the Virtual Machine.
	// +crossplane:generate:reference:type=github.com/upbound/provider-azure/apis/network/v1beta1.NetworkInterface
	// +crossplane:generate:reference:extractor=github.com/upbound/provider-azure/apis/rconfig.ExtractResourceID()
	// +kubebuilder:validation:Optional
	NetworkInterfaceIds []*string `json:"networkInterfaceIds,omitempty" tf:"network_interface_ids,omitempty"`

	// References to NetworkInterface in network to populate networkInterfaceIds.
	// +kubebuilder:validation:Optional
	NetworkInterfaceIdsRefs []v1.Reference `json:"networkInterfaceIdsRefs,omitempty" tf:"-"`

	// Selector for a list of NetworkInterface in network to populate networkInterfaceIds.
	// +kubebuilder:validation:Optional
	NetworkInterfaceIdsSelector *v1.Selector `json:"networkInterfaceIdsSelector,omitempty" tf:"-"`

	// A os_disk block as defined below.
	// +kubebuilder:validation:Optional
	OsDisk []LinuxVirtualMachineOsDiskParameters `json:"osDisk,omitempty" tf:"os_disk,omitempty"`

	// A os_image_notification block as defined below.
	// +kubebuilder:validation:Optional
	OsImageNotification []OsImageNotificationParameters `json:"osImageNotification,omitempty" tf:"os_image_notification,omitempty"`

	// Specifies the mode of VM Guest Patching for the Virtual Machine. Possible values are AutomaticByPlatform or ImageDefault. Defaults to ImageDefault.
	// +kubebuilder:validation:Optional
	PatchAssessmentMode *string `json:"patchAssessmentMode,omitempty" tf:"patch_assessment_mode,omitempty"`

	// Specifies the mode of in-guest patching to this Linux Virtual Machine. Possible values are AutomaticByPlatform and ImageDefault. Defaults to ImageDefault. For more information on patch modes please see the product documentation.
	// +kubebuilder:validation:Optional
	PatchMode *string `json:"patchMode,omitempty" tf:"patch_mode,omitempty"`

	// A plan block as defined below. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	Plan []PlanParameters `json:"plan,omitempty" tf:"plan,omitempty"`

	// Specifies the Platform Fault Domain in which this Linux Virtual Machine should be created. Defaults to -1, which means this will be automatically assigned to a fault domain that best maintains balance across the available fault domains. Changing this forces a new Linux Virtual Machine to be created.
	// +kubebuilder:validation:Optional
	PlatformFaultDomain *float64 `json:"platformFaultDomain,omitempty" tf:"platform_fault_domain,omitempty"`

	// Specifies the priority of this Virtual Machine. Possible values are Regular and Spot. Defaults to Regular. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	Priority *string `json:"priority,omitempty" tf:"priority,omitempty"`

	// Should the Azure VM Agent be provisioned on this Virtual Machine? Defaults to true. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	ProvisionVMAgent *bool `json:"provisionVmAgent,omitempty" tf:"provision_vm_agent,omitempty"`

	// The ID of the Proximity Placement Group which the Virtual Machine should be assigned to.
	// +kubebuilder:validation:Optional
	ProximityPlacementGroupID *string `json:"proximityPlacementGroupId,omitempty" tf:"proximity_placement_group_id,omitempty"`

	// Specifies the reboot setting for platform scheduled patching. Possible values are Always, IfRequired and Never.
	// +kubebuilder:validation:Optional
	RebootSetting *string `json:"rebootSetting,omitempty" tf:"reboot_setting,omitempty"`

	// The name of the Resource Group in which the Linux Virtual Machine should be exist. 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:"-"`

	// One or more secret blocks as defined below.
	// +kubebuilder:validation:Optional
	Secret []SecretParameters `json:"secret,omitempty" tf:"secret,omitempty"`

	// Specifies whether secure boot should be enabled on the virtual machine. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	SecureBootEnabled *bool `json:"secureBootEnabled,omitempty" tf:"secure_boot_enabled,omitempty"`

	// The SKU which should be used for this Virtual Machine, such as Standard_F2.
	// +kubebuilder:validation:Optional
	Size *string `json:"size,omitempty" tf:"size,omitempty"`

	// The ID of the Image which this Virtual Machine should be created from. Changing this forces a new resource to be created. Possible Image ID types include Image IDs, Shared Image IDs, Shared Image Version IDs, Community Gallery Image IDs, Community Gallery Image Version IDs, Shared Gallery Image IDs and Shared Gallery Image Version IDs.
	// +kubebuilder:validation:Optional
	SourceImageID *string `json:"sourceImageId,omitempty" tf:"source_image_id,omitempty"`

	// A source_image_reference block as defined below. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	SourceImageReference []SourceImageReferenceParameters `json:"sourceImageReference,omitempty" tf:"source_image_reference,omitempty"`

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

	// A termination_notification block as defined below.
	// +kubebuilder:validation:Optional
	TerminationNotification []TerminationNotificationParameters `json:"terminationNotification,omitempty" tf:"termination_notification,omitempty"`

	// The Base64-Encoded User Data which should be used for this Virtual Machine.
	// +kubebuilder:validation:Optional
	UserData *string `json:"userData,omitempty" tf:"user_data,omitempty"`

	// Specifies whether VMAgent Platform Updates is enabled. Defaults to false.
	// +kubebuilder:validation:Optional
	VMAgentPlatformUpdatesEnabled *bool `json:"vmAgentPlatformUpdatesEnabled,omitempty" tf:"vm_agent_platform_updates_enabled,omitempty"`

	// Specifies the Orchestrated Virtual Machine Scale Set that this Virtual Machine should be created within.
	// +kubebuilder:validation:Optional
	VirtualMachineScaleSetID *string `json:"virtualMachineScaleSetId,omitempty" tf:"virtual_machine_scale_set_id,omitempty"`

	// Specifies whether vTPM should be enabled on the virtual machine. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	VtpmEnabled *bool `json:"vtpmEnabled,omitempty" tf:"vtpm_enabled,omitempty"`

	// Specifies the Availability Zones in which this Linux Virtual Machine should be located. Changing this forces a new Linux Virtual Machine to be created.
	// +kubebuilder:validation:Optional
	Zone *string `json:"zone,omitempty" tf:"zone,omitempty"`
}

func (*LinuxVirtualMachineParameters) DeepCopy

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

func (*LinuxVirtualMachineParameters) DeepCopyInto

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

type LinuxVirtualMachineScaleSet

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

LinuxVirtualMachineScaleSet is the Schema for the LinuxVirtualMachineScaleSets API. Manages a Linux Virtual Machine Scale Set. +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 (*LinuxVirtualMachineScaleSet) DeepCopy

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

func (*LinuxVirtualMachineScaleSet) DeepCopyInto

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

func (*LinuxVirtualMachineScaleSet) DeepCopyObject

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

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

func (*LinuxVirtualMachineScaleSet) GetCondition

GetCondition of this LinuxVirtualMachineScaleSet.

func (*LinuxVirtualMachineScaleSet) GetConnectionDetailsMapping

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

GetConnectionDetailsMapping for this LinuxVirtualMachineScaleSet

func (*LinuxVirtualMachineScaleSet) GetDeletionPolicy

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

GetDeletionPolicy of this LinuxVirtualMachineScaleSet.

func (*LinuxVirtualMachineScaleSet) GetID

func (tr *LinuxVirtualMachineScaleSet) GetID() string

GetID returns ID of underlying Terraform resource of this LinuxVirtualMachineScaleSet

func (*LinuxVirtualMachineScaleSet) GetInitParameters added in v0.35.0

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

GetInitParameters of this LinuxVirtualMachineScaleSet

func (*LinuxVirtualMachineScaleSet) GetManagementPolicies added in v0.35.0

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

GetManagementPolicies of this LinuxVirtualMachineScaleSet.

func (*LinuxVirtualMachineScaleSet) GetMergedParameters added in v0.40.0

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

GetInitParameters of this LinuxVirtualMachineScaleSet

func (*LinuxVirtualMachineScaleSet) GetObservation

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

GetObservation of this LinuxVirtualMachineScaleSet

func (*LinuxVirtualMachineScaleSet) GetParameters

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

GetParameters of this LinuxVirtualMachineScaleSet

func (*LinuxVirtualMachineScaleSet) GetProviderConfigReference

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

GetProviderConfigReference of this LinuxVirtualMachineScaleSet.

func (*LinuxVirtualMachineScaleSet) GetPublishConnectionDetailsTo

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

GetPublishConnectionDetailsTo of this LinuxVirtualMachineScaleSet.

func (*LinuxVirtualMachineScaleSet) GetTerraformResourceType

func (mg *LinuxVirtualMachineScaleSet) GetTerraformResourceType() string

GetTerraformResourceType returns Terraform resource type for this LinuxVirtualMachineScaleSet

func (*LinuxVirtualMachineScaleSet) GetTerraformSchemaVersion

func (tr *LinuxVirtualMachineScaleSet) GetTerraformSchemaVersion() int

GetTerraformSchemaVersion returns the associated Terraform schema version

func (*LinuxVirtualMachineScaleSet) GetWriteConnectionSecretToReference

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

GetWriteConnectionSecretToReference of this LinuxVirtualMachineScaleSet.

func (*LinuxVirtualMachineScaleSet) Hub added in v0.42.1

func (tr *LinuxVirtualMachineScaleSet) Hub()

Hub marks this type as a conversion hub.

func (*LinuxVirtualMachineScaleSet) LateInitialize

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

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

func (*LinuxVirtualMachineScaleSet) ResolveReferences

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

ResolveReferences of this LinuxVirtualMachineScaleSet.

func (*LinuxVirtualMachineScaleSet) SetConditions

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

SetConditions of this LinuxVirtualMachineScaleSet.

func (*LinuxVirtualMachineScaleSet) SetDeletionPolicy

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

SetDeletionPolicy of this LinuxVirtualMachineScaleSet.

func (*LinuxVirtualMachineScaleSet) SetManagementPolicies added in v0.35.0

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

SetManagementPolicies of this LinuxVirtualMachineScaleSet.

func (*LinuxVirtualMachineScaleSet) SetObservation

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

SetObservation for this LinuxVirtualMachineScaleSet

func (*LinuxVirtualMachineScaleSet) SetParameters

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

SetParameters for this LinuxVirtualMachineScaleSet

func (*LinuxVirtualMachineScaleSet) SetProviderConfigReference

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

SetProviderConfigReference of this LinuxVirtualMachineScaleSet.

func (*LinuxVirtualMachineScaleSet) SetPublishConnectionDetailsTo

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

SetPublishConnectionDetailsTo of this LinuxVirtualMachineScaleSet.

func (*LinuxVirtualMachineScaleSet) SetWriteConnectionSecretToReference

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

SetWriteConnectionSecretToReference of this LinuxVirtualMachineScaleSet.

type LinuxVirtualMachineScaleSetAdditionalCapabilitiesInitParameters added in v0.35.0

type LinuxVirtualMachineScaleSetAdditionalCapabilitiesInitParameters struct {

	// Should the capacity to enable Data Disks of the UltraSSD_LRS storage account type be supported on this Virtual Machine Scale Set? Possible values are true or false. Defaults to false. Changing this forces a new resource to be created.
	UltraSsdEnabled *bool `json:"ultraSsdEnabled,omitempty" tf:"ultra_ssd_enabled,omitempty"`
}

func (*LinuxVirtualMachineScaleSetAdditionalCapabilitiesInitParameters) DeepCopy added in v0.35.0

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

func (*LinuxVirtualMachineScaleSetAdditionalCapabilitiesInitParameters) DeepCopyInto added in v0.35.0

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

type LinuxVirtualMachineScaleSetAdditionalCapabilitiesObservation

type LinuxVirtualMachineScaleSetAdditionalCapabilitiesObservation struct {

	// Should the capacity to enable Data Disks of the UltraSSD_LRS storage account type be supported on this Virtual Machine Scale Set? Possible values are true or false. Defaults to false. Changing this forces a new resource to be created.
	UltraSsdEnabled *bool `json:"ultraSsdEnabled,omitempty" tf:"ultra_ssd_enabled,omitempty"`
}

func (*LinuxVirtualMachineScaleSetAdditionalCapabilitiesObservation) DeepCopy

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

func (*LinuxVirtualMachineScaleSetAdditionalCapabilitiesObservation) DeepCopyInto

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

type LinuxVirtualMachineScaleSetAdditionalCapabilitiesParameters

type LinuxVirtualMachineScaleSetAdditionalCapabilitiesParameters struct {

	// Should the capacity to enable Data Disks of the UltraSSD_LRS storage account type be supported on this Virtual Machine Scale Set? Possible values are true or false. Defaults to false. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	UltraSsdEnabled *bool `json:"ultraSsdEnabled,omitempty" tf:"ultra_ssd_enabled,omitempty"`
}

func (*LinuxVirtualMachineScaleSetAdditionalCapabilitiesParameters) DeepCopy

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

func (*LinuxVirtualMachineScaleSetAdditionalCapabilitiesParameters) DeepCopyInto

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

type LinuxVirtualMachineScaleSetAdminSSHKeyInitParameters added in v0.35.0

type LinuxVirtualMachineScaleSetAdminSSHKeyInitParameters struct {

	// The Public Key which should be used for authentication, which needs to be at least 2048-bit and in ssh-rsa format.
	PublicKey *string `json:"publicKey,omitempty" tf:"public_key,omitempty"`

	// The Username for which this Public SSH Key should be configured.
	Username *string `json:"username,omitempty" tf:"username,omitempty"`
}

func (*LinuxVirtualMachineScaleSetAdminSSHKeyInitParameters) DeepCopy added in v0.35.0

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

func (*LinuxVirtualMachineScaleSetAdminSSHKeyInitParameters) DeepCopyInto added in v0.35.0

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

type LinuxVirtualMachineScaleSetAdminSSHKeyObservation

type LinuxVirtualMachineScaleSetAdminSSHKeyObservation struct {

	// The Public Key which should be used for authentication, which needs to be at least 2048-bit and in ssh-rsa format.
	PublicKey *string `json:"publicKey,omitempty" tf:"public_key,omitempty"`

	// The Username for which this Public SSH Key should be configured.
	Username *string `json:"username,omitempty" tf:"username,omitempty"`
}

func (*LinuxVirtualMachineScaleSetAdminSSHKeyObservation) DeepCopy

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

func (*LinuxVirtualMachineScaleSetAdminSSHKeyObservation) DeepCopyInto

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

type LinuxVirtualMachineScaleSetAdminSSHKeyParameters

type LinuxVirtualMachineScaleSetAdminSSHKeyParameters struct {

	// The Public Key which should be used for authentication, which needs to be at least 2048-bit and in ssh-rsa format.
	// +kubebuilder:validation:Optional
	PublicKey *string `json:"publicKey" tf:"public_key,omitempty"`

	// The Username for which this Public SSH Key should be configured.
	// +kubebuilder:validation:Optional
	Username *string `json:"username" tf:"username,omitempty"`
}

func (*LinuxVirtualMachineScaleSetAdminSSHKeyParameters) DeepCopy

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

func (*LinuxVirtualMachineScaleSetAdminSSHKeyParameters) DeepCopyInto

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

type LinuxVirtualMachineScaleSetBootDiagnosticsInitParameters added in v0.35.0

type LinuxVirtualMachineScaleSetBootDiagnosticsInitParameters struct {

	// The Primary/Secondary Endpoint for the Azure Storage Account which should be used to store Boot Diagnostics, including Console Output and Screenshots from the Hypervisor.
	StorageAccountURI *string `json:"storageAccountUri,omitempty" tf:"storage_account_uri,omitempty"`
}

func (*LinuxVirtualMachineScaleSetBootDiagnosticsInitParameters) DeepCopy added in v0.35.0

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

func (*LinuxVirtualMachineScaleSetBootDiagnosticsInitParameters) DeepCopyInto added in v0.35.0

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

type LinuxVirtualMachineScaleSetBootDiagnosticsObservation

type LinuxVirtualMachineScaleSetBootDiagnosticsObservation struct {

	// The Primary/Secondary Endpoint for the Azure Storage Account which should be used to store Boot Diagnostics, including Console Output and Screenshots from the Hypervisor.
	StorageAccountURI *string `json:"storageAccountUri,omitempty" tf:"storage_account_uri,omitempty"`
}

func (*LinuxVirtualMachineScaleSetBootDiagnosticsObservation) DeepCopy

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

func (*LinuxVirtualMachineScaleSetBootDiagnosticsObservation) DeepCopyInto

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

type LinuxVirtualMachineScaleSetBootDiagnosticsParameters

type LinuxVirtualMachineScaleSetBootDiagnosticsParameters struct {

	// The Primary/Secondary Endpoint for the Azure Storage Account which should be used to store Boot Diagnostics, including Console Output and Screenshots from the Hypervisor.
	// +kubebuilder:validation:Optional
	StorageAccountURI *string `json:"storageAccountUri,omitempty" tf:"storage_account_uri,omitempty"`
}

func (*LinuxVirtualMachineScaleSetBootDiagnosticsParameters) DeepCopy

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

func (*LinuxVirtualMachineScaleSetBootDiagnosticsParameters) DeepCopyInto

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

type LinuxVirtualMachineScaleSetDataDiskInitParameters added in v0.35.0

type LinuxVirtualMachineScaleSetDataDiskInitParameters struct {

	// The type of Caching which should be used for this Data Disk. Possible values are None, ReadOnly and ReadWrite.
	Caching *string `json:"caching,omitempty" tf:"caching,omitempty"`

	// The create option which should be used for this Data Disk. Possible values are Empty and FromImage. Defaults to Empty. (FromImage should only be used if the source image includes data disks).
	CreateOption *string `json:"createOption,omitempty" tf:"create_option,omitempty"`

	// The ID of the Disk Encryption Set which should be used to encrypt this OS Disk. Conflicts with secure_vm_disk_encryption_set_id. Changing this forces a new resource to be created.
	DiskEncryptionSetID *string `json:"diskEncryptionSetId,omitempty" tf:"disk_encryption_set_id,omitempty"`

	// The size of the Data Disk which should be created.
	DiskSizeGb *float64 `json:"diskSizeGb,omitempty" tf:"disk_size_gb,omitempty"`

	// The Logical Unit Number of the Data Disk, which must be unique within the Virtual Machine.
	Lun *float64 `json:"lun,omitempty" tf:"lun,omitempty"`

	// The name of the Data Disk.
	Name *string `json:"name,omitempty" tf:"name,omitempty"`

	// The Type of Storage Account which should back this Data Disk. Possible values include Standard_LRS, StandardSSD_LRS, StandardSSD_ZRS, Premium_LRS, PremiumV2_LRS, Premium_ZRS and UltraSSD_LRS.
	StorageAccountType *string `json:"storageAccountType,omitempty" tf:"storage_account_type,omitempty"`

	// Specifies the Read-Write IOPS for this Data Disk. Only settable when storage_account_type is PremiumV2_LRS or UltraSSD_LRS.
	UltraSsdDiskIopsReadWrite *float64 `json:"ultraSsdDiskIopsReadWrite,omitempty" tf:"ultra_ssd_disk_iops_read_write,omitempty"`

	// Specifies the bandwidth in MB per second for this Data Disk. Only settable when storage_account_type is PremiumV2_LRS or UltraSSD_LRS.
	UltraSsdDiskMbpsReadWrite *float64 `json:"ultraSsdDiskMbpsReadWrite,omitempty" tf:"ultra_ssd_disk_mbps_read_write,omitempty"`

	// Should Write Accelerator be Enabled for this OS Disk? Defaults to false.
	WriteAcceleratorEnabled *bool `json:"writeAcceleratorEnabled,omitempty" tf:"write_accelerator_enabled,omitempty"`
}

func (*LinuxVirtualMachineScaleSetDataDiskInitParameters) DeepCopy added in v0.35.0

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

func (*LinuxVirtualMachineScaleSetDataDiskInitParameters) DeepCopyInto added in v0.35.0

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

type LinuxVirtualMachineScaleSetDataDiskObservation

type LinuxVirtualMachineScaleSetDataDiskObservation struct {

	// The type of Caching which should be used for this Data Disk. Possible values are None, ReadOnly and ReadWrite.
	Caching *string `json:"caching,omitempty" tf:"caching,omitempty"`

	// The create option which should be used for this Data Disk. Possible values are Empty and FromImage. Defaults to Empty. (FromImage should only be used if the source image includes data disks).
	CreateOption *string `json:"createOption,omitempty" tf:"create_option,omitempty"`

	// The ID of the Disk Encryption Set which should be used to encrypt this OS Disk. Conflicts with secure_vm_disk_encryption_set_id. Changing this forces a new resource to be created.
	DiskEncryptionSetID *string `json:"diskEncryptionSetId,omitempty" tf:"disk_encryption_set_id,omitempty"`

	// The size of the Data Disk which should be created.
	DiskSizeGb *float64 `json:"diskSizeGb,omitempty" tf:"disk_size_gb,omitempty"`

	// The Logical Unit Number of the Data Disk, which must be unique within the Virtual Machine.
	Lun *float64 `json:"lun,omitempty" tf:"lun,omitempty"`

	// The name of the Data Disk.
	Name *string `json:"name,omitempty" tf:"name,omitempty"`

	// The Type of Storage Account which should back this Data Disk. Possible values include Standard_LRS, StandardSSD_LRS, StandardSSD_ZRS, Premium_LRS, PremiumV2_LRS, Premium_ZRS and UltraSSD_LRS.
	StorageAccountType *string `json:"storageAccountType,omitempty" tf:"storage_account_type,omitempty"`

	// Specifies the Read-Write IOPS for this Data Disk. Only settable when storage_account_type is PremiumV2_LRS or UltraSSD_LRS.
	UltraSsdDiskIopsReadWrite *float64 `json:"ultraSsdDiskIopsReadWrite,omitempty" tf:"ultra_ssd_disk_iops_read_write,omitempty"`

	// Specifies the bandwidth in MB per second for this Data Disk. Only settable when storage_account_type is PremiumV2_LRS or UltraSSD_LRS.
	UltraSsdDiskMbpsReadWrite *float64 `json:"ultraSsdDiskMbpsReadWrite,omitempty" tf:"ultra_ssd_disk_mbps_read_write,omitempty"`

	// Should Write Accelerator be Enabled for this OS Disk? Defaults to false.
	WriteAcceleratorEnabled *bool `json:"writeAcceleratorEnabled,omitempty" tf:"write_accelerator_enabled,omitempty"`
}

func (*LinuxVirtualMachineScaleSetDataDiskObservation) DeepCopy

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

func (*LinuxVirtualMachineScaleSetDataDiskObservation) DeepCopyInto

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

type LinuxVirtualMachineScaleSetDataDiskParameters

type LinuxVirtualMachineScaleSetDataDiskParameters struct {

	// The type of Caching which should be used for this Data Disk. Possible values are None, ReadOnly and ReadWrite.
	// +kubebuilder:validation:Optional
	Caching *string `json:"caching" tf:"caching,omitempty"`

	// The create option which should be used for this Data Disk. Possible values are Empty and FromImage. Defaults to Empty. (FromImage should only be used if the source image includes data disks).
	// +kubebuilder:validation:Optional
	CreateOption *string `json:"createOption,omitempty" tf:"create_option,omitempty"`

	// The ID of the Disk Encryption Set which should be used to encrypt this OS Disk. Conflicts with secure_vm_disk_encryption_set_id. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	DiskEncryptionSetID *string `json:"diskEncryptionSetId,omitempty" tf:"disk_encryption_set_id,omitempty"`

	// The size of the Data Disk which should be created.
	// +kubebuilder:validation:Optional
	DiskSizeGb *float64 `json:"diskSizeGb" tf:"disk_size_gb,omitempty"`

	// The Logical Unit Number of the Data Disk, which must be unique within the Virtual Machine.
	// +kubebuilder:validation:Optional
	Lun *float64 `json:"lun" tf:"lun,omitempty"`

	// The name of the Data Disk.
	// +kubebuilder:validation:Optional
	Name *string `json:"name,omitempty" tf:"name,omitempty"`

	// The Type of Storage Account which should back this Data Disk. Possible values include Standard_LRS, StandardSSD_LRS, StandardSSD_ZRS, Premium_LRS, PremiumV2_LRS, Premium_ZRS and UltraSSD_LRS.
	// +kubebuilder:validation:Optional
	StorageAccountType *string `json:"storageAccountType" tf:"storage_account_type,omitempty"`

	// Specifies the Read-Write IOPS for this Data Disk. Only settable when storage_account_type is PremiumV2_LRS or UltraSSD_LRS.
	// +kubebuilder:validation:Optional
	UltraSsdDiskIopsReadWrite *float64 `json:"ultraSsdDiskIopsReadWrite,omitempty" tf:"ultra_ssd_disk_iops_read_write,omitempty"`

	// Specifies the bandwidth in MB per second for this Data Disk. Only settable when storage_account_type is PremiumV2_LRS or UltraSSD_LRS.
	// +kubebuilder:validation:Optional
	UltraSsdDiskMbpsReadWrite *float64 `json:"ultraSsdDiskMbpsReadWrite,omitempty" tf:"ultra_ssd_disk_mbps_read_write,omitempty"`

	// Should Write Accelerator be Enabled for this OS Disk? Defaults to false.
	// +kubebuilder:validation:Optional
	WriteAcceleratorEnabled *bool `json:"writeAcceleratorEnabled,omitempty" tf:"write_accelerator_enabled,omitempty"`
}

func (*LinuxVirtualMachineScaleSetDataDiskParameters) DeepCopy

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

func (*LinuxVirtualMachineScaleSetDataDiskParameters) DeepCopyInto

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

type LinuxVirtualMachineScaleSetGalleryApplicationInitParameters added in v0.35.0

type LinuxVirtualMachineScaleSetGalleryApplicationInitParameters struct {

	// Specifies the URI to an Azure Blob that will replace the default configuration for the package if provided. Changing this forces a new resource to be created.
	ConfigurationBlobURI *string `json:"configurationBlobUri,omitempty" tf:"configuration_blob_uri,omitempty"`

	// Specifies the order in which the packages have to be installed. Possible values are between 0 and 2,147,483,647. Changing this forces a new resource to be created.
	Order *float64 `json:"order,omitempty" tf:"order,omitempty"`

	// Specifies a passthrough value for more generic context. This field can be any valid string value. Changing this forces a new resource to be created.
	Tag *string `json:"tag,omitempty" tf:"tag,omitempty"`

	// Specifies the Gallery Application Version resource ID. Changing this forces a new resource to be created.
	VersionID *string `json:"versionId,omitempty" tf:"version_id,omitempty"`
}

func (*LinuxVirtualMachineScaleSetGalleryApplicationInitParameters) DeepCopy added in v0.35.0

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

func (*LinuxVirtualMachineScaleSetGalleryApplicationInitParameters) DeepCopyInto added in v0.35.0

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

type LinuxVirtualMachineScaleSetGalleryApplicationObservation added in v0.26.0

type LinuxVirtualMachineScaleSetGalleryApplicationObservation struct {

	// Specifies the URI to an Azure Blob that will replace the default configuration for the package if provided. Changing this forces a new resource to be created.
	ConfigurationBlobURI *string `json:"configurationBlobUri,omitempty" tf:"configuration_blob_uri,omitempty"`

	// Specifies the order in which the packages have to be installed. Possible values are between 0 and 2,147,483,647. Changing this forces a new resource to be created.
	Order *float64 `json:"order,omitempty" tf:"order,omitempty"`

	// Specifies a passthrough value for more generic context. This field can be any valid string value. Changing this forces a new resource to be created.
	Tag *string `json:"tag,omitempty" tf:"tag,omitempty"`

	// Specifies the Gallery Application Version resource ID. Changing this forces a new resource to be created.
	VersionID *string `json:"versionId,omitempty" tf:"version_id,omitempty"`
}

func (*LinuxVirtualMachineScaleSetGalleryApplicationObservation) DeepCopy added in v0.26.0

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

func (*LinuxVirtualMachineScaleSetGalleryApplicationObservation) DeepCopyInto added in v0.26.0

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

type LinuxVirtualMachineScaleSetGalleryApplicationParameters added in v0.26.0

type LinuxVirtualMachineScaleSetGalleryApplicationParameters struct {

	// Specifies the URI to an Azure Blob that will replace the default configuration for the package if provided. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	ConfigurationBlobURI *string `json:"configurationBlobUri,omitempty" tf:"configuration_blob_uri,omitempty"`

	// Specifies the order in which the packages have to be installed. Possible values are between 0 and 2,147,483,647. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	Order *float64 `json:"order,omitempty" tf:"order,omitempty"`

	// Specifies a passthrough value for more generic context. This field can be any valid string value. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	Tag *string `json:"tag,omitempty" tf:"tag,omitempty"`

	// Specifies the Gallery Application Version resource ID. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	VersionID *string `json:"versionId" tf:"version_id,omitempty"`
}

func (*LinuxVirtualMachineScaleSetGalleryApplicationParameters) DeepCopy added in v0.26.0

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

func (*LinuxVirtualMachineScaleSetGalleryApplicationParameters) DeepCopyInto added in v0.26.0

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

type LinuxVirtualMachineScaleSetIdentityInitParameters added in v0.35.0

type LinuxVirtualMachineScaleSetIdentityInitParameters struct {

	// Specifies a list of User Assigned Managed Identity IDs to be assigned to this Linux Virtual Machine Scale Set.
	// +listType=set
	IdentityIds []*string `json:"identityIds,omitempty" tf:"identity_ids,omitempty"`

	// Specifies the type of Managed Service Identity that should be configured on this Linux Virtual Machine Scale Set. Possible values are SystemAssigned, UserAssigned, SystemAssigned, UserAssigned (to enable both).
	Type *string `json:"type,omitempty" tf:"type,omitempty"`
}

func (*LinuxVirtualMachineScaleSetIdentityInitParameters) DeepCopy added in v0.35.0

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

func (*LinuxVirtualMachineScaleSetIdentityInitParameters) DeepCopyInto added in v0.35.0

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

type LinuxVirtualMachineScaleSetIdentityObservation

type LinuxVirtualMachineScaleSetIdentityObservation struct {

	// Specifies a list of User Assigned Managed Identity IDs to be assigned to this Linux Virtual Machine Scale Set.
	// +listType=set
	IdentityIds []*string `json:"identityIds,omitempty" tf:"identity_ids,omitempty"`

	// 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 Linux Virtual Machine Scale Set. Possible values are SystemAssigned, UserAssigned, SystemAssigned, UserAssigned (to enable both).
	Type *string `json:"type,omitempty" tf:"type,omitempty"`
}

func (*LinuxVirtualMachineScaleSetIdentityObservation) DeepCopy

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

func (*LinuxVirtualMachineScaleSetIdentityObservation) DeepCopyInto

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

type LinuxVirtualMachineScaleSetIdentityParameters

type LinuxVirtualMachineScaleSetIdentityParameters struct {

	// Specifies a list of User Assigned Managed Identity IDs to be assigned to this Linux Virtual Machine Scale Set.
	// +kubebuilder:validation:Optional
	// +listType=set
	IdentityIds []*string `json:"identityIds,omitempty" tf:"identity_ids,omitempty"`

	// Specifies the type of Managed Service Identity that should be configured on this Linux Virtual Machine Scale Set. Possible values are SystemAssigned, UserAssigned, SystemAssigned, UserAssigned (to enable both).
	// +kubebuilder:validation:Optional
	Type *string `json:"type" tf:"type,omitempty"`
}

func (*LinuxVirtualMachineScaleSetIdentityParameters) DeepCopy

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

func (*LinuxVirtualMachineScaleSetIdentityParameters) DeepCopyInto

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

type LinuxVirtualMachineScaleSetInitParameters added in v0.35.0

type LinuxVirtualMachineScaleSetInitParameters struct {

	// An additional_capabilities block as defined below.
	AdditionalCapabilities []LinuxVirtualMachineScaleSetAdditionalCapabilitiesInitParameters `json:"additionalCapabilities,omitempty" tf:"additional_capabilities,omitempty"`

	// One or more admin_ssh_key blocks as defined below.
	AdminSSHKey []LinuxVirtualMachineScaleSetAdminSSHKeyInitParameters `json:"adminSshKey,omitempty" tf:"admin_ssh_key,omitempty"`

	// The username of the local administrator on each Virtual Machine Scale Set instance. Changing this forces a new resource to be created.
	AdminUsername *string `json:"adminUsername,omitempty" tf:"admin_username,omitempty"`

	// An automatic_instance_repair block as defined below. To enable the automatic instance repair, this Virtual Machine Scale Set must have a valid health_probe_id or an Application Health Extension.
	AutomaticInstanceRepair []AutomaticInstanceRepairInitParameters `json:"automaticInstanceRepair,omitempty" tf:"automatic_instance_repair,omitempty"`

	// An automatic_os_upgrade_policy block as defined below. This can only be specified when upgrade_mode is set to either Automatic or Rolling.
	AutomaticOsUpgradePolicy []AutomaticOsUpgradePolicyInitParameters `json:"automaticOsUpgradePolicy,omitempty" tf:"automatic_os_upgrade_policy,omitempty"`

	// A boot_diagnostics block as defined below.
	BootDiagnostics []LinuxVirtualMachineScaleSetBootDiagnosticsInitParameters `json:"bootDiagnostics,omitempty" tf:"boot_diagnostics,omitempty"`

	// Specifies the ID of the Capacity Reservation Group which the Virtual Machine Scale Set should be allocated to. Changing this forces a new resource to be created.
	CapacityReservationGroupID *string `json:"capacityReservationGroupId,omitempty" tf:"capacity_reservation_group_id,omitempty"`

	// The prefix which should be used for the name of the Virtual Machines in this Scale Set. If unspecified this defaults to the value for the name field. If the value of the name field is not a valid computer_name_prefix, then you must specify computer_name_prefix. Changing this forces a new resource to be created.
	ComputerNamePrefix *string `json:"computerNamePrefix,omitempty" tf:"computer_name_prefix,omitempty"`

	// One or more data_disk blocks as defined below.
	DataDisk []LinuxVirtualMachineScaleSetDataDiskInitParameters `json:"dataDisk,omitempty" tf:"data_disk,omitempty"`

	// Should Password Authentication be disabled on this Virtual Machine Scale Set? Defaults to true.
	DisablePasswordAuthentication *bool `json:"disablePasswordAuthentication,omitempty" tf:"disable_password_authentication,omitempty"`

	// Should Virtual Machine Extensions be run on Overprovisioned Virtual Machines in the Scale Set? Defaults to false.
	DoNotRunExtensionsOnOverprovisionedMachines *bool `json:"doNotRunExtensionsOnOverprovisionedMachines,omitempty" tf:"do_not_run_extensions_on_overprovisioned_machines,omitempty"`

	// Specifies the Edge Zone within the Azure Region where this Linux Virtual Machine Scale Set should exist. Changing this forces a new Linux Virtual Machine Scale Set to be created.
	EdgeZone *string `json:"edgeZone,omitempty" tf:"edge_zone,omitempty"`

	// Should all of the disks (including the temp disk) attached to this Virtual Machine be encrypted by enabling Encryption at Host?
	EncryptionAtHostEnabled *bool `json:"encryptionAtHostEnabled,omitempty" tf:"encryption_at_host_enabled,omitempty"`

	// Specifies the eviction policy for Virtual Machines in this Scale Set. Possible values are Deallocate and Delete. Changing this forces a new resource to be created.
	EvictionPolicy *string `json:"evictionPolicy,omitempty" tf:"eviction_policy,omitempty"`

	// One or more extension blocks as defined below
	Extension []ExtensionInitParameters `json:"extension,omitempty" tf:"extension,omitempty"`

	// Should extension operations be allowed on the Virtual Machine Scale Set? Possible values are true or false. Defaults to true. Changing this forces a new Linux Virtual Machine Scale Set to be created.
	ExtensionOperationsEnabled *bool `json:"extensionOperationsEnabled,omitempty" tf:"extension_operations_enabled,omitempty"`

	// Specifies the duration allocated for all extensions to start. The time duration should be between 15 minutes and 120 minutes (inclusive) and should be specified in ISO 8601 format. Defaults to PT1H30M.
	ExtensionsTimeBudget *string `json:"extensionsTimeBudget,omitempty" tf:"extensions_time_budget,omitempty"`

	// One or more gallery_application blocks as defined below.
	GalleryApplication []LinuxVirtualMachineScaleSetGalleryApplicationInitParameters `json:"galleryApplication,omitempty" tf:"gallery_application,omitempty"`

	GalleryApplications []GalleryApplicationsInitParameters `json:"galleryApplications,omitempty" tf:"gallery_applications,omitempty"`

	// The ID of a Load Balancer Probe which should be used to determine the health of an instance. This is Required and can only be specified when upgrade_mode is set to Automatic or Rolling.
	HealthProbeID *string `json:"healthProbeId,omitempty" tf:"health_probe_id,omitempty"`

	// Specifies the ID of the dedicated host group that the virtual machine scale set resides in. Changing this forces a new resource to be created.
	HostGroupID *string `json:"hostGroupId,omitempty" tf:"host_group_id,omitempty"`

	// An identity block as defined below.
	Identity []LinuxVirtualMachineScaleSetIdentityInitParameters `json:"identity,omitempty" tf:"identity,omitempty"`

	// The number of Virtual Machines in the Scale Set. Defaults to 0.
	Instances *float64 `json:"instances,omitempty" tf:"instances,omitempty"`

	// The Azure location where the Linux Virtual Machine Scale Set should exist. Changing this forces a new resource to be created.
	Location *string `json:"location,omitempty" tf:"location,omitempty"`

	// The maximum price you're willing to pay for each Virtual Machine in this Scale Set, in US Dollars; which must be greater than the current spot price. If this bid price falls below the current spot price the Virtual Machines in the Scale Set will be evicted using the eviction_policy. Defaults to -1, which means that each Virtual Machine in this Scale Set should not be evicted for price reasons.
	MaxBidPrice *float64 `json:"maxBidPrice,omitempty" tf:"max_bid_price,omitempty"`

	// One or more network_interface blocks as defined below.
	NetworkInterface []NetworkInterfaceInitParameters `json:"networkInterface,omitempty" tf:"network_interface,omitempty"`

	// An os_disk block as defined below.
	OsDisk []LinuxVirtualMachineScaleSetOsDiskInitParameters `json:"osDisk,omitempty" tf:"os_disk,omitempty"`

	// Should Azure over-provision Virtual Machines in this Scale Set? This means that multiple Virtual Machines will be provisioned and Azure will keep the instances which become available first - which improves provisioning success rates and improves deployment time. You're not billed for these over-provisioned VM's and they don't count towards the Subscription Quota. Defaults to true.
	Overprovision *bool `json:"overprovision,omitempty" tf:"overprovision,omitempty"`

	// A plan block as defined below. Changing this forces a new resource to be created.
	Plan []LinuxVirtualMachineScaleSetPlanInitParameters `json:"plan,omitempty" tf:"plan,omitempty"`

	// Specifies the number of fault domains that are used by this Linux Virtual Machine Scale Set. Changing this forces a new resource to be created.
	PlatformFaultDomainCount *float64 `json:"platformFaultDomainCount,omitempty" tf:"platform_fault_domain_count,omitempty"`

	// The Priority of this Virtual Machine Scale Set. Possible values are Regular and Spot. Defaults to Regular. Changing this value forces a new resource.
	Priority *string `json:"priority,omitempty" tf:"priority,omitempty"`

	// Should the Azure VM Agent be provisioned on each Virtual Machine in the Scale Set? Defaults to true. Changing this value forces a new resource to be created.
	ProvisionVMAgent *bool `json:"provisionVmAgent,omitempty" tf:"provision_vm_agent,omitempty"`

	// The ID of the Proximity Placement Group in which the Virtual Machine Scale Set should be assigned to. Changing this forces a new resource to be created.
	ProximityPlacementGroupID *string `json:"proximityPlacementGroupId,omitempty" tf:"proximity_placement_group_id,omitempty"`

	// A rolling_upgrade_policy block as defined below. This is Required and can only be specified when upgrade_mode is set to Automatic or Rolling. Changing this forces a new resource to be created.
	RollingUpgradePolicy []RollingUpgradePolicyInitParameters `json:"rollingUpgradePolicy,omitempty" tf:"rolling_upgrade_policy,omitempty"`

	// A scale_in block as defined below.
	ScaleIn []ScaleInInitParameters `json:"scaleIn,omitempty" tf:"scale_in,omitempty"`

	// One or more secret blocks as defined below.
	Secret []LinuxVirtualMachineScaleSetSecretInitParameters `json:"secret,omitempty" tf:"secret,omitempty"`

	// Specifies whether secure boot should be enabled on the virtual machine. Changing this forces a new resource to be created.
	SecureBootEnabled *bool `json:"secureBootEnabled,omitempty" tf:"secure_boot_enabled,omitempty"`

	// Should this Virtual Machine Scale Set be limited to a Single Placement Group, which means the number of instances will be capped at 100 Virtual Machines. Defaults to true.
	SinglePlacementGroup *bool `json:"singlePlacementGroup,omitempty" tf:"single_placement_group,omitempty"`

	// The Virtual Machine SKU for the Scale Set, such as Standard_F2.
	Sku *string `json:"sku,omitempty" tf:"sku,omitempty"`

	// The ID of an Image which each Virtual Machine in this Scale Set should be based on. Possible Image ID types include Image ID, Shared Image ID, Shared Image Version ID, Community Gallery Image ID, Community Gallery Image Version ID, Shared Gallery Image ID and Shared Gallery Image Version ID.
	SourceImageID *string `json:"sourceImageId,omitempty" tf:"source_image_id,omitempty"`

	// A source_image_reference block as defined below.
	SourceImageReference []LinuxVirtualMachineScaleSetSourceImageReferenceInitParameters `json:"sourceImageReference,omitempty" tf:"source_image_reference,omitempty"`

	// A spot_restore block as defined below.
	SpotRestore []SpotRestoreInitParameters `json:"spotRestore,omitempty" tf:"spot_restore,omitempty"`

	// A mapping of tags which should be assigned to this Virtual Machine Scale Set.
	// +mapType=granular
	Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"`

	// A terminate_notification block as defined below.
	TerminateNotification []TerminateNotificationInitParameters `json:"terminateNotification,omitempty" tf:"terminate_notification,omitempty"`

	// A termination_notification block as defined below.
	TerminationNotification []LinuxVirtualMachineScaleSetTerminationNotificationInitParameters `json:"terminationNotification,omitempty" tf:"termination_notification,omitempty"`

	// Specifies how Upgrades (e.g. changing the Image/SKU) should be performed to Virtual Machine Instances. Possible values are Automatic, Manual and Rolling. Defaults to Manual. Changing this forces a new resource to be created.
	UpgradeMode *string `json:"upgradeMode,omitempty" tf:"upgrade_mode,omitempty"`

	// The Base64-Encoded User Data which should be used for this Virtual Machine Scale Set.
	UserData *string `json:"userData,omitempty" tf:"user_data,omitempty"`

	// Specifies whether vTPM should be enabled on the virtual machine. Changing this forces a new resource to be created.
	VtpmEnabled *bool `json:"vtpmEnabled,omitempty" tf:"vtpm_enabled,omitempty"`

	// Should the Virtual Machines in this Scale Set be strictly evenly distributed across Availability Zones? Defaults to false. Changing this forces a new resource to be created.
	ZoneBalance *bool `json:"zoneBalance,omitempty" tf:"zone_balance,omitempty"`

	// Specifies a list of Availability Zones in which this Linux Virtual Machine Scale Set should be located. Changing this forces a new Linux Virtual Machine Scale Set to be created.
	// +listType=set
	Zones []*string `json:"zones,omitempty" tf:"zones,omitempty"`
}

func (*LinuxVirtualMachineScaleSetInitParameters) DeepCopy added in v0.35.0

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

func (*LinuxVirtualMachineScaleSetInitParameters) DeepCopyInto added in v0.35.0

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

type LinuxVirtualMachineScaleSetList

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

LinuxVirtualMachineScaleSetList contains a list of LinuxVirtualMachineScaleSets

func (*LinuxVirtualMachineScaleSetList) DeepCopy

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

func (*LinuxVirtualMachineScaleSetList) DeepCopyInto

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

func (*LinuxVirtualMachineScaleSetList) DeepCopyObject

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

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

func (*LinuxVirtualMachineScaleSetList) GetItems

GetItems of this LinuxVirtualMachineScaleSetList.

type LinuxVirtualMachineScaleSetObservation

type LinuxVirtualMachineScaleSetObservation struct {

	// An additional_capabilities block as defined below.
	AdditionalCapabilities []LinuxVirtualMachineScaleSetAdditionalCapabilitiesObservation `json:"additionalCapabilities,omitempty" tf:"additional_capabilities,omitempty"`

	// One or more admin_ssh_key blocks as defined below.
	AdminSSHKey []LinuxVirtualMachineScaleSetAdminSSHKeyObservation `json:"adminSshKey,omitempty" tf:"admin_ssh_key,omitempty"`

	// The username of the local administrator on each Virtual Machine Scale Set instance. Changing this forces a new resource to be created.
	AdminUsername *string `json:"adminUsername,omitempty" tf:"admin_username,omitempty"`

	// An automatic_instance_repair block as defined below. To enable the automatic instance repair, this Virtual Machine Scale Set must have a valid health_probe_id or an Application Health Extension.
	AutomaticInstanceRepair []AutomaticInstanceRepairObservation `json:"automaticInstanceRepair,omitempty" tf:"automatic_instance_repair,omitempty"`

	// An automatic_os_upgrade_policy block as defined below. This can only be specified when upgrade_mode is set to either Automatic or Rolling.
	AutomaticOsUpgradePolicy []AutomaticOsUpgradePolicyObservation `json:"automaticOsUpgradePolicy,omitempty" tf:"automatic_os_upgrade_policy,omitempty"`

	// A boot_diagnostics block as defined below.
	BootDiagnostics []LinuxVirtualMachineScaleSetBootDiagnosticsObservation `json:"bootDiagnostics,omitempty" tf:"boot_diagnostics,omitempty"`

	// Specifies the ID of the Capacity Reservation Group which the Virtual Machine Scale Set should be allocated to. Changing this forces a new resource to be created.
	CapacityReservationGroupID *string `json:"capacityReservationGroupId,omitempty" tf:"capacity_reservation_group_id,omitempty"`

	// The prefix which should be used for the name of the Virtual Machines in this Scale Set. If unspecified this defaults to the value for the name field. If the value of the name field is not a valid computer_name_prefix, then you must specify computer_name_prefix. Changing this forces a new resource to be created.
	ComputerNamePrefix *string `json:"computerNamePrefix,omitempty" tf:"computer_name_prefix,omitempty"`

	// One or more data_disk blocks as defined below.
	DataDisk []LinuxVirtualMachineScaleSetDataDiskObservation `json:"dataDisk,omitempty" tf:"data_disk,omitempty"`

	// Should Password Authentication be disabled on this Virtual Machine Scale Set? Defaults to true.
	DisablePasswordAuthentication *bool `json:"disablePasswordAuthentication,omitempty" tf:"disable_password_authentication,omitempty"`

	// Should Virtual Machine Extensions be run on Overprovisioned Virtual Machines in the Scale Set? Defaults to false.
	DoNotRunExtensionsOnOverprovisionedMachines *bool `json:"doNotRunExtensionsOnOverprovisionedMachines,omitempty" tf:"do_not_run_extensions_on_overprovisioned_machines,omitempty"`

	// Specifies the Edge Zone within the Azure Region where this Linux Virtual Machine Scale Set should exist. Changing this forces a new Linux Virtual Machine Scale Set to be created.
	EdgeZone *string `json:"edgeZone,omitempty" tf:"edge_zone,omitempty"`

	// Should all of the disks (including the temp disk) attached to this Virtual Machine be encrypted by enabling Encryption at Host?
	EncryptionAtHostEnabled *bool `json:"encryptionAtHostEnabled,omitempty" tf:"encryption_at_host_enabled,omitempty"`

	// Specifies the eviction policy for Virtual Machines in this Scale Set. Possible values are Deallocate and Delete. Changing this forces a new resource to be created.
	EvictionPolicy *string `json:"evictionPolicy,omitempty" tf:"eviction_policy,omitempty"`

	// One or more extension blocks as defined below
	Extension []ExtensionObservation `json:"extension,omitempty" tf:"extension,omitempty"`

	// Should extension operations be allowed on the Virtual Machine Scale Set? Possible values are true or false. Defaults to true. Changing this forces a new Linux Virtual Machine Scale Set to be created.
	ExtensionOperationsEnabled *bool `json:"extensionOperationsEnabled,omitempty" tf:"extension_operations_enabled,omitempty"`

	// Specifies the duration allocated for all extensions to start. The time duration should be between 15 minutes and 120 minutes (inclusive) and should be specified in ISO 8601 format. Defaults to PT1H30M.
	ExtensionsTimeBudget *string `json:"extensionsTimeBudget,omitempty" tf:"extensions_time_budget,omitempty"`

	// One or more gallery_application blocks as defined below.
	GalleryApplication []LinuxVirtualMachineScaleSetGalleryApplicationObservation `json:"galleryApplication,omitempty" tf:"gallery_application,omitempty"`

	GalleryApplications []GalleryApplicationsObservation `json:"galleryApplications,omitempty" tf:"gallery_applications,omitempty"`

	// The ID of a Load Balancer Probe which should be used to determine the health of an instance. This is Required and can only be specified when upgrade_mode is set to Automatic or Rolling.
	HealthProbeID *string `json:"healthProbeId,omitempty" tf:"health_probe_id,omitempty"`

	// Specifies the ID of the dedicated host group that the virtual machine scale set resides in. Changing this forces a new resource to be created.
	HostGroupID *string `json:"hostGroupId,omitempty" tf:"host_group_id,omitempty"`

	// The ID of the Linux Virtual Machine Scale Set.
	ID *string `json:"id,omitempty" tf:"id,omitempty"`

	// An identity block as defined below.
	Identity []LinuxVirtualMachineScaleSetIdentityObservation `json:"identity,omitempty" tf:"identity,omitempty"`

	// The number of Virtual Machines in the Scale Set. Defaults to 0.
	Instances *float64 `json:"instances,omitempty" tf:"instances,omitempty"`

	// The Azure location where the Linux Virtual Machine Scale Set should exist. Changing this forces a new resource to be created.
	Location *string `json:"location,omitempty" tf:"location,omitempty"`

	// The maximum price you're willing to pay for each Virtual Machine in this Scale Set, in US Dollars; which must be greater than the current spot price. If this bid price falls below the current spot price the Virtual Machines in the Scale Set will be evicted using the eviction_policy. Defaults to -1, which means that each Virtual Machine in this Scale Set should not be evicted for price reasons.
	MaxBidPrice *float64 `json:"maxBidPrice,omitempty" tf:"max_bid_price,omitempty"`

	// One or more network_interface blocks as defined below.
	NetworkInterface []NetworkInterfaceObservation `json:"networkInterface,omitempty" tf:"network_interface,omitempty"`

	// An os_disk block as defined below.
	OsDisk []LinuxVirtualMachineScaleSetOsDiskObservation `json:"osDisk,omitempty" tf:"os_disk,omitempty"`

	// Should Azure over-provision Virtual Machines in this Scale Set? This means that multiple Virtual Machines will be provisioned and Azure will keep the instances which become available first - which improves provisioning success rates and improves deployment time. You're not billed for these over-provisioned VM's and they don't count towards the Subscription Quota. Defaults to true.
	Overprovision *bool `json:"overprovision,omitempty" tf:"overprovision,omitempty"`

	// A plan block as defined below. Changing this forces a new resource to be created.
	Plan []LinuxVirtualMachineScaleSetPlanObservation `json:"plan,omitempty" tf:"plan,omitempty"`

	// Specifies the number of fault domains that are used by this Linux Virtual Machine Scale Set. Changing this forces a new resource to be created.
	PlatformFaultDomainCount *float64 `json:"platformFaultDomainCount,omitempty" tf:"platform_fault_domain_count,omitempty"`

	// The Priority of this Virtual Machine Scale Set. Possible values are Regular and Spot. Defaults to Regular. Changing this value forces a new resource.
	Priority *string `json:"priority,omitempty" tf:"priority,omitempty"`

	// Should the Azure VM Agent be provisioned on each Virtual Machine in the Scale Set? Defaults to true. Changing this value forces a new resource to be created.
	ProvisionVMAgent *bool `json:"provisionVmAgent,omitempty" tf:"provision_vm_agent,omitempty"`

	// The ID of the Proximity Placement Group in which the Virtual Machine Scale Set should be assigned to. Changing this forces a new resource to be created.
	ProximityPlacementGroupID *string `json:"proximityPlacementGroupId,omitempty" tf:"proximity_placement_group_id,omitempty"`

	// The name of the Resource Group in which the Linux Virtual Machine Scale Set should be exist. Changing this forces a new resource to be created.
	ResourceGroupName *string `json:"resourceGroupName,omitempty" tf:"resource_group_name,omitempty"`

	// A rolling_upgrade_policy block as defined below. This is Required and can only be specified when upgrade_mode is set to Automatic or Rolling. Changing this forces a new resource to be created.
	RollingUpgradePolicy []RollingUpgradePolicyObservation `json:"rollingUpgradePolicy,omitempty" tf:"rolling_upgrade_policy,omitempty"`

	// A scale_in block as defined below.
	ScaleIn []ScaleInObservation `json:"scaleIn,omitempty" tf:"scale_in,omitempty"`

	ScaleInPolicy *string `json:"scaleInPolicy,omitempty" tf:"scale_in_policy,omitempty"`

	// One or more secret blocks as defined below.
	Secret []LinuxVirtualMachineScaleSetSecretObservation `json:"secret,omitempty" tf:"secret,omitempty"`

	// Specifies whether secure boot should be enabled on the virtual machine. Changing this forces a new resource to be created.
	SecureBootEnabled *bool `json:"secureBootEnabled,omitempty" tf:"secure_boot_enabled,omitempty"`

	// Should this Virtual Machine Scale Set be limited to a Single Placement Group, which means the number of instances will be capped at 100 Virtual Machines. Defaults to true.
	SinglePlacementGroup *bool `json:"singlePlacementGroup,omitempty" tf:"single_placement_group,omitempty"`

	// The Virtual Machine SKU for the Scale Set, such as Standard_F2.
	Sku *string `json:"sku,omitempty" tf:"sku,omitempty"`

	// The ID of an Image which each Virtual Machine in this Scale Set should be based on. Possible Image ID types include Image ID, Shared Image ID, Shared Image Version ID, Community Gallery Image ID, Community Gallery Image Version ID, Shared Gallery Image ID and Shared Gallery Image Version ID.
	SourceImageID *string `json:"sourceImageId,omitempty" tf:"source_image_id,omitempty"`

	// A source_image_reference block as defined below.
	SourceImageReference []LinuxVirtualMachineScaleSetSourceImageReferenceObservation `json:"sourceImageReference,omitempty" tf:"source_image_reference,omitempty"`

	// A spot_restore block as defined below.
	SpotRestore []SpotRestoreObservation `json:"spotRestore,omitempty" tf:"spot_restore,omitempty"`

	// A mapping of tags which should be assigned to this Virtual Machine Scale Set.
	// +mapType=granular
	Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"`

	// A terminate_notification block as defined below.
	TerminateNotification []TerminateNotificationObservation `json:"terminateNotification,omitempty" tf:"terminate_notification,omitempty"`

	// A termination_notification block as defined below.
	TerminationNotification []LinuxVirtualMachineScaleSetTerminationNotificationObservation `json:"terminationNotification,omitempty" tf:"termination_notification,omitempty"`

	// The Unique ID for this Linux Virtual Machine Scale Set.
	UniqueID *string `json:"uniqueId,omitempty" tf:"unique_id,omitempty"`

	// Specifies how Upgrades (e.g. changing the Image/SKU) should be performed to Virtual Machine Instances. Possible values are Automatic, Manual and Rolling. Defaults to Manual. Changing this forces a new resource to be created.
	UpgradeMode *string `json:"upgradeMode,omitempty" tf:"upgrade_mode,omitempty"`

	// The Base64-Encoded User Data which should be used for this Virtual Machine Scale Set.
	UserData *string `json:"userData,omitempty" tf:"user_data,omitempty"`

	// Specifies whether vTPM should be enabled on the virtual machine. Changing this forces a new resource to be created.
	VtpmEnabled *bool `json:"vtpmEnabled,omitempty" tf:"vtpm_enabled,omitempty"`

	// Should the Virtual Machines in this Scale Set be strictly evenly distributed across Availability Zones? Defaults to false. Changing this forces a new resource to be created.
	ZoneBalance *bool `json:"zoneBalance,omitempty" tf:"zone_balance,omitempty"`

	// Specifies a list of Availability Zones in which this Linux Virtual Machine Scale Set should be located. Changing this forces a new Linux Virtual Machine Scale Set to be created.
	// +listType=set
	Zones []*string `json:"zones,omitempty" tf:"zones,omitempty"`
}

func (*LinuxVirtualMachineScaleSetObservation) DeepCopy

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

func (*LinuxVirtualMachineScaleSetObservation) DeepCopyInto

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

type LinuxVirtualMachineScaleSetOsDiskInitParameters added in v0.35.0

type LinuxVirtualMachineScaleSetOsDiskInitParameters struct {

	// The Type of Caching which should be used for the Internal OS Disk. Possible values are None, ReadOnly and ReadWrite.
	Caching *string `json:"caching,omitempty" tf:"caching,omitempty"`

	// A diff_disk_settings block as defined above. Changing this forces a new resource to be created.
	DiffDiskSettings []OsDiskDiffDiskSettingsInitParameters `json:"diffDiskSettings,omitempty" tf:"diff_disk_settings,omitempty"`

	// The ID of the Disk Encryption Set which should be used to encrypt this OS Disk. Conflicts with secure_vm_disk_encryption_set_id. Changing this forces a new resource to be created.
	DiskEncryptionSetID *string `json:"diskEncryptionSetId,omitempty" tf:"disk_encryption_set_id,omitempty"`

	// The Size of the Internal OS Disk in GB, if you wish to vary from the size used in the image this Virtual Machine Scale Set is sourced from.
	DiskSizeGb *float64 `json:"diskSizeGb,omitempty" tf:"disk_size_gb,omitempty"`

	// The ID of the Disk Encryption Set which should be used to Encrypt the OS Disk when the Virtual Machine Scale Set is Confidential VMSS. Conflicts with disk_encryption_set_id. Changing this forces a new resource to be created.
	SecureVMDiskEncryptionSetID *string `json:"secureVmDiskEncryptionSetId,omitempty" tf:"secure_vm_disk_encryption_set_id,omitempty"`

	// Encryption Type when the Virtual Machine Scale Set is Confidential VMSS. Possible values are VMGuestStateOnly and DiskWithVMGuestState. Changing this forces a new resource to be created.
	SecurityEncryptionType *string `json:"securityEncryptionType,omitempty" tf:"security_encryption_type,omitempty"`

	// The Type of Storage Account which should back this the Internal OS Disk. Possible values include Standard_LRS, StandardSSD_LRS, StandardSSD_ZRS, Premium_LRS and Premium_ZRS. Changing this forces a new resource to be created.
	StorageAccountType *string `json:"storageAccountType,omitempty" tf:"storage_account_type,omitempty"`

	// Should Write Accelerator be Enabled for this OS Disk? Defaults to false.
	WriteAcceleratorEnabled *bool `json:"writeAcceleratorEnabled,omitempty" tf:"write_accelerator_enabled,omitempty"`
}

func (*LinuxVirtualMachineScaleSetOsDiskInitParameters) DeepCopy added in v0.35.0

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

func (*LinuxVirtualMachineScaleSetOsDiskInitParameters) DeepCopyInto added in v0.35.0

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

type LinuxVirtualMachineScaleSetOsDiskObservation

type LinuxVirtualMachineScaleSetOsDiskObservation struct {

	// The Type of Caching which should be used for the Internal OS Disk. Possible values are None, ReadOnly and ReadWrite.
	Caching *string `json:"caching,omitempty" tf:"caching,omitempty"`

	// A diff_disk_settings block as defined above. Changing this forces a new resource to be created.
	DiffDiskSettings []OsDiskDiffDiskSettingsObservation `json:"diffDiskSettings,omitempty" tf:"diff_disk_settings,omitempty"`

	// The ID of the Disk Encryption Set which should be used to encrypt this OS Disk. Conflicts with secure_vm_disk_encryption_set_id. Changing this forces a new resource to be created.
	DiskEncryptionSetID *string `json:"diskEncryptionSetId,omitempty" tf:"disk_encryption_set_id,omitempty"`

	// The Size of the Internal OS Disk in GB, if you wish to vary from the size used in the image this Virtual Machine Scale Set is sourced from.
	DiskSizeGb *float64 `json:"diskSizeGb,omitempty" tf:"disk_size_gb,omitempty"`

	// The ID of the Disk Encryption Set which should be used to Encrypt the OS Disk when the Virtual Machine Scale Set is Confidential VMSS. Conflicts with disk_encryption_set_id. Changing this forces a new resource to be created.
	SecureVMDiskEncryptionSetID *string `json:"secureVmDiskEncryptionSetId,omitempty" tf:"secure_vm_disk_encryption_set_id,omitempty"`

	// Encryption Type when the Virtual Machine Scale Set is Confidential VMSS. Possible values are VMGuestStateOnly and DiskWithVMGuestState. Changing this forces a new resource to be created.
	SecurityEncryptionType *string `json:"securityEncryptionType,omitempty" tf:"security_encryption_type,omitempty"`

	// The Type of Storage Account which should back this the Internal OS Disk. Possible values include Standard_LRS, StandardSSD_LRS, StandardSSD_ZRS, Premium_LRS and Premium_ZRS. Changing this forces a new resource to be created.
	StorageAccountType *string `json:"storageAccountType,omitempty" tf:"storage_account_type,omitempty"`

	// Should Write Accelerator be Enabled for this OS Disk? Defaults to false.
	WriteAcceleratorEnabled *bool `json:"writeAcceleratorEnabled,omitempty" tf:"write_accelerator_enabled,omitempty"`
}

func (*LinuxVirtualMachineScaleSetOsDiskObservation) DeepCopy

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

func (*LinuxVirtualMachineScaleSetOsDiskObservation) DeepCopyInto

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

type LinuxVirtualMachineScaleSetOsDiskParameters

type LinuxVirtualMachineScaleSetOsDiskParameters struct {

	// The Type of Caching which should be used for the Internal OS Disk. Possible values are None, ReadOnly and ReadWrite.
	// +kubebuilder:validation:Optional
	Caching *string `json:"caching" tf:"caching,omitempty"`

	// A diff_disk_settings block as defined above. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	DiffDiskSettings []OsDiskDiffDiskSettingsParameters `json:"diffDiskSettings,omitempty" tf:"diff_disk_settings,omitempty"`

	// The ID of the Disk Encryption Set which should be used to encrypt this OS Disk. Conflicts with secure_vm_disk_encryption_set_id. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	DiskEncryptionSetID *string `json:"diskEncryptionSetId,omitempty" tf:"disk_encryption_set_id,omitempty"`

	// The Size of the Internal OS Disk in GB, if you wish to vary from the size used in the image this Virtual Machine Scale Set is sourced from.
	// +kubebuilder:validation:Optional
	DiskSizeGb *float64 `json:"diskSizeGb,omitempty" tf:"disk_size_gb,omitempty"`

	// The ID of the Disk Encryption Set which should be used to Encrypt the OS Disk when the Virtual Machine Scale Set is Confidential VMSS. Conflicts with disk_encryption_set_id. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	SecureVMDiskEncryptionSetID *string `json:"secureVmDiskEncryptionSetId,omitempty" tf:"secure_vm_disk_encryption_set_id,omitempty"`

	// Encryption Type when the Virtual Machine Scale Set is Confidential VMSS. Possible values are VMGuestStateOnly and DiskWithVMGuestState. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	SecurityEncryptionType *string `json:"securityEncryptionType,omitempty" tf:"security_encryption_type,omitempty"`

	// The Type of Storage Account which should back this the Internal OS Disk. Possible values include Standard_LRS, StandardSSD_LRS, StandardSSD_ZRS, Premium_LRS and Premium_ZRS. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	StorageAccountType *string `json:"storageAccountType" tf:"storage_account_type,omitempty"`

	// Should Write Accelerator be Enabled for this OS Disk? Defaults to false.
	// +kubebuilder:validation:Optional
	WriteAcceleratorEnabled *bool `json:"writeAcceleratorEnabled,omitempty" tf:"write_accelerator_enabled,omitempty"`
}

func (*LinuxVirtualMachineScaleSetOsDiskParameters) DeepCopy

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

func (*LinuxVirtualMachineScaleSetOsDiskParameters) DeepCopyInto

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

type LinuxVirtualMachineScaleSetParameters

type LinuxVirtualMachineScaleSetParameters struct {

	// An additional_capabilities block as defined below.
	// +kubebuilder:validation:Optional
	AdditionalCapabilities []LinuxVirtualMachineScaleSetAdditionalCapabilitiesParameters `json:"additionalCapabilities,omitempty" tf:"additional_capabilities,omitempty"`

	// The Password which should be used for the local-administrator on this Virtual Machine. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	AdminPasswordSecretRef *v1.SecretKeySelector `json:"adminPasswordSecretRef,omitempty" tf:"-"`

	// One or more admin_ssh_key blocks as defined below.
	// +kubebuilder:validation:Optional
	AdminSSHKey []LinuxVirtualMachineScaleSetAdminSSHKeyParameters `json:"adminSshKey,omitempty" tf:"admin_ssh_key,omitempty"`

	// The username of the local administrator on each Virtual Machine Scale Set instance. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	AdminUsername *string `json:"adminUsername,omitempty" tf:"admin_username,omitempty"`

	// An automatic_instance_repair block as defined below. To enable the automatic instance repair, this Virtual Machine Scale Set must have a valid health_probe_id or an Application Health Extension.
	// +kubebuilder:validation:Optional
	AutomaticInstanceRepair []AutomaticInstanceRepairParameters `json:"automaticInstanceRepair,omitempty" tf:"automatic_instance_repair,omitempty"`

	// An automatic_os_upgrade_policy block as defined below. This can only be specified when upgrade_mode is set to either Automatic or Rolling.
	// +kubebuilder:validation:Optional
	AutomaticOsUpgradePolicy []AutomaticOsUpgradePolicyParameters `json:"automaticOsUpgradePolicy,omitempty" tf:"automatic_os_upgrade_policy,omitempty"`

	// A boot_diagnostics block as defined below.
	// +kubebuilder:validation:Optional
	BootDiagnostics []LinuxVirtualMachineScaleSetBootDiagnosticsParameters `json:"bootDiagnostics,omitempty" tf:"boot_diagnostics,omitempty"`

	// Specifies the ID of the Capacity Reservation Group which the Virtual Machine Scale Set should be allocated to. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	CapacityReservationGroupID *string `json:"capacityReservationGroupId,omitempty" tf:"capacity_reservation_group_id,omitempty"`

	// The prefix which should be used for the name of the Virtual Machines in this Scale Set. If unspecified this defaults to the value for the name field. If the value of the name field is not a valid computer_name_prefix, then you must specify computer_name_prefix. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	ComputerNamePrefix *string `json:"computerNamePrefix,omitempty" tf:"computer_name_prefix,omitempty"`

	// The Base64-Encoded Custom Data which should be used for this Virtual Machine Scale Set.
	// +kubebuilder:validation:Optional
	CustomDataSecretRef *v1.SecretKeySelector `json:"customDataSecretRef,omitempty" tf:"-"`

	// One or more data_disk blocks as defined below.
	// +kubebuilder:validation:Optional
	DataDisk []LinuxVirtualMachineScaleSetDataDiskParameters `json:"dataDisk,omitempty" tf:"data_disk,omitempty"`

	// Should Password Authentication be disabled on this Virtual Machine Scale Set? Defaults to true.
	// +kubebuilder:validation:Optional
	DisablePasswordAuthentication *bool `json:"disablePasswordAuthentication,omitempty" tf:"disable_password_authentication,omitempty"`

	// Should Virtual Machine Extensions be run on Overprovisioned Virtual Machines in the Scale Set? Defaults to false.
	// +kubebuilder:validation:Optional
	DoNotRunExtensionsOnOverprovisionedMachines *bool `json:"doNotRunExtensionsOnOverprovisionedMachines,omitempty" tf:"do_not_run_extensions_on_overprovisioned_machines,omitempty"`

	// Specifies the Edge Zone within the Azure Region where this Linux Virtual Machine Scale Set should exist. Changing this forces a new Linux Virtual Machine Scale Set to be created.
	// +kubebuilder:validation:Optional
	EdgeZone *string `json:"edgeZone,omitempty" tf:"edge_zone,omitempty"`

	// Should all of the disks (including the temp disk) attached to this Virtual Machine be encrypted by enabling Encryption at Host?
	// +kubebuilder:validation:Optional
	EncryptionAtHostEnabled *bool `json:"encryptionAtHostEnabled,omitempty" tf:"encryption_at_host_enabled,omitempty"`

	// Specifies the eviction policy for Virtual Machines in this Scale Set. Possible values are Deallocate and Delete. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	EvictionPolicy *string `json:"evictionPolicy,omitempty" tf:"eviction_policy,omitempty"`

	// One or more extension blocks as defined below
	// +kubebuilder:validation:Optional
	Extension []ExtensionParameters `json:"extension,omitempty" tf:"extension,omitempty"`

	// Should extension operations be allowed on the Virtual Machine Scale Set? Possible values are true or false. Defaults to true. Changing this forces a new Linux Virtual Machine Scale Set to be created.
	// +kubebuilder:validation:Optional
	ExtensionOperationsEnabled *bool `json:"extensionOperationsEnabled,omitempty" tf:"extension_operations_enabled,omitempty"`

	// Specifies the duration allocated for all extensions to start. The time duration should be between 15 minutes and 120 minutes (inclusive) and should be specified in ISO 8601 format. Defaults to PT1H30M.
	// +kubebuilder:validation:Optional
	ExtensionsTimeBudget *string `json:"extensionsTimeBudget,omitempty" tf:"extensions_time_budget,omitempty"`

	// One or more gallery_application blocks as defined below.
	// +kubebuilder:validation:Optional
	GalleryApplication []LinuxVirtualMachineScaleSetGalleryApplicationParameters `json:"galleryApplication,omitempty" tf:"gallery_application,omitempty"`

	// +kubebuilder:validation:Optional
	GalleryApplications []GalleryApplicationsParameters `json:"galleryApplications,omitempty" tf:"gallery_applications,omitempty"`

	// The ID of a Load Balancer Probe which should be used to determine the health of an instance. This is Required and can only be specified when upgrade_mode is set to Automatic or Rolling.
	// +kubebuilder:validation:Optional
	HealthProbeID *string `json:"healthProbeId,omitempty" tf:"health_probe_id,omitempty"`

	// Specifies the ID of the dedicated host group that the virtual machine scale set resides in. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	HostGroupID *string `json:"hostGroupId,omitempty" tf:"host_group_id,omitempty"`

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

	// The number of Virtual Machines in the Scale Set. Defaults to 0.
	// +kubebuilder:validation:Optional
	Instances *float64 `json:"instances,omitempty" tf:"instances,omitempty"`

	// The Azure location where the Linux Virtual Machine Scale Set should exist. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	Location *string `json:"location,omitempty" tf:"location,omitempty"`

	// The maximum price you're willing to pay for each Virtual Machine in this Scale Set, in US Dollars; which must be greater than the current spot price. If this bid price falls below the current spot price the Virtual Machines in the Scale Set will be evicted using the eviction_policy. Defaults to -1, which means that each Virtual Machine in this Scale Set should not be evicted for price reasons.
	// +kubebuilder:validation:Optional
	MaxBidPrice *float64 `json:"maxBidPrice,omitempty" tf:"max_bid_price,omitempty"`

	// One or more network_interface blocks as defined below.
	// +kubebuilder:validation:Optional
	NetworkInterface []NetworkInterfaceParameters `json:"networkInterface,omitempty" tf:"network_interface,omitempty"`

	// An os_disk block as defined below.
	// +kubebuilder:validation:Optional
	OsDisk []LinuxVirtualMachineScaleSetOsDiskParameters `json:"osDisk,omitempty" tf:"os_disk,omitempty"`

	// Should Azure over-provision Virtual Machines in this Scale Set? This means that multiple Virtual Machines will be provisioned and Azure will keep the instances which become available first - which improves provisioning success rates and improves deployment time. You're not billed for these over-provisioned VM's and they don't count towards the Subscription Quota. Defaults to true.
	// +kubebuilder:validation:Optional
	Overprovision *bool `json:"overprovision,omitempty" tf:"overprovision,omitempty"`

	// A plan block as defined below. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	Plan []LinuxVirtualMachineScaleSetPlanParameters `json:"plan,omitempty" tf:"plan,omitempty"`

	// Specifies the number of fault domains that are used by this Linux Virtual Machine Scale Set. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	PlatformFaultDomainCount *float64 `json:"platformFaultDomainCount,omitempty" tf:"platform_fault_domain_count,omitempty"`

	// The Priority of this Virtual Machine Scale Set. Possible values are Regular and Spot. Defaults to Regular. Changing this value forces a new resource.
	// +kubebuilder:validation:Optional
	Priority *string `json:"priority,omitempty" tf:"priority,omitempty"`

	// Should the Azure VM Agent be provisioned on each Virtual Machine in the Scale Set? Defaults to true. Changing this value forces a new resource to be created.
	// +kubebuilder:validation:Optional
	ProvisionVMAgent *bool `json:"provisionVmAgent,omitempty" tf:"provision_vm_agent,omitempty"`

	// The ID of the Proximity Placement Group in which the Virtual Machine Scale Set should be assigned to. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	ProximityPlacementGroupID *string `json:"proximityPlacementGroupId,omitempty" tf:"proximity_placement_group_id,omitempty"`

	// The name of the Resource Group in which the Linux Virtual Machine Scale Set should be exist. 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 rolling_upgrade_policy block as defined below. This is Required and can only be specified when upgrade_mode is set to Automatic or Rolling. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	RollingUpgradePolicy []RollingUpgradePolicyParameters `json:"rollingUpgradePolicy,omitempty" tf:"rolling_upgrade_policy,omitempty"`

	// A scale_in block as defined below.
	// +kubebuilder:validation:Optional
	ScaleIn []ScaleInParameters `json:"scaleIn,omitempty" tf:"scale_in,omitempty"`

	// One or more secret blocks as defined below.
	// +kubebuilder:validation:Optional
	Secret []LinuxVirtualMachineScaleSetSecretParameters `json:"secret,omitempty" tf:"secret,omitempty"`

	// Specifies whether secure boot should be enabled on the virtual machine. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	SecureBootEnabled *bool `json:"secureBootEnabled,omitempty" tf:"secure_boot_enabled,omitempty"`

	// Should this Virtual Machine Scale Set be limited to a Single Placement Group, which means the number of instances will be capped at 100 Virtual Machines. Defaults to true.
	// +kubebuilder:validation:Optional
	SinglePlacementGroup *bool `json:"singlePlacementGroup,omitempty" tf:"single_placement_group,omitempty"`

	// The Virtual Machine SKU for the Scale Set, such as Standard_F2.
	// +kubebuilder:validation:Optional
	Sku *string `json:"sku,omitempty" tf:"sku,omitempty"`

	// The ID of an Image which each Virtual Machine in this Scale Set should be based on. Possible Image ID types include Image ID, Shared Image ID, Shared Image Version ID, Community Gallery Image ID, Community Gallery Image Version ID, Shared Gallery Image ID and Shared Gallery Image Version ID.
	// +kubebuilder:validation:Optional
	SourceImageID *string `json:"sourceImageId,omitempty" tf:"source_image_id,omitempty"`

	// A source_image_reference block as defined below.
	// +kubebuilder:validation:Optional
	SourceImageReference []LinuxVirtualMachineScaleSetSourceImageReferenceParameters `json:"sourceImageReference,omitempty" tf:"source_image_reference,omitempty"`

	// A spot_restore block as defined below.
	// +kubebuilder:validation:Optional
	SpotRestore []SpotRestoreParameters `json:"spotRestore,omitempty" tf:"spot_restore,omitempty"`

	// A mapping of tags which should be assigned to this Virtual Machine Scale Set.
	// +kubebuilder:validation:Optional
	// +mapType=granular
	Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"`

	// A terminate_notification block as defined below.
	// +kubebuilder:validation:Optional
	TerminateNotification []TerminateNotificationParameters `json:"terminateNotification,omitempty" tf:"terminate_notification,omitempty"`

	// A termination_notification block as defined below.
	// +kubebuilder:validation:Optional
	TerminationNotification []LinuxVirtualMachineScaleSetTerminationNotificationParameters `json:"terminationNotification,omitempty" tf:"termination_notification,omitempty"`

	// Specifies how Upgrades (e.g. changing the Image/SKU) should be performed to Virtual Machine Instances. Possible values are Automatic, Manual and Rolling. Defaults to Manual. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	UpgradeMode *string `json:"upgradeMode,omitempty" tf:"upgrade_mode,omitempty"`

	// The Base64-Encoded User Data which should be used for this Virtual Machine Scale Set.
	// +kubebuilder:validation:Optional
	UserData *string `json:"userData,omitempty" tf:"user_data,omitempty"`

	// Specifies whether vTPM should be enabled on the virtual machine. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	VtpmEnabled *bool `json:"vtpmEnabled,omitempty" tf:"vtpm_enabled,omitempty"`

	// Should the Virtual Machines in this Scale Set be strictly evenly distributed across Availability Zones? Defaults to false. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	ZoneBalance *bool `json:"zoneBalance,omitempty" tf:"zone_balance,omitempty"`

	// Specifies a list of Availability Zones in which this Linux Virtual Machine Scale Set should be located. Changing this forces a new Linux Virtual Machine Scale Set to be created.
	// +kubebuilder:validation:Optional
	// +listType=set
	Zones []*string `json:"zones,omitempty" tf:"zones,omitempty"`
}

func (*LinuxVirtualMachineScaleSetParameters) DeepCopy

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

func (*LinuxVirtualMachineScaleSetParameters) DeepCopyInto

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

type LinuxVirtualMachineScaleSetPlanInitParameters added in v0.35.0

type LinuxVirtualMachineScaleSetPlanInitParameters struct {

	// Specifies the name of the image from the marketplace. Changing this forces a new resource to be created.
	Name *string `json:"name,omitempty" tf:"name,omitempty"`

	// Specifies the product of the image from the marketplace. Changing this forces a new resource to be created.
	Product *string `json:"product,omitempty" tf:"product,omitempty"`

	// Specifies the publisher of the image. Changing this forces a new resource to be created.
	Publisher *string `json:"publisher,omitempty" tf:"publisher,omitempty"`
}

func (*LinuxVirtualMachineScaleSetPlanInitParameters) DeepCopy added in v0.35.0

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

func (*LinuxVirtualMachineScaleSetPlanInitParameters) DeepCopyInto added in v0.35.0

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

type LinuxVirtualMachineScaleSetPlanObservation

type LinuxVirtualMachineScaleSetPlanObservation struct {

	// Specifies the name of the image from the marketplace. Changing this forces a new resource to be created.
	Name *string `json:"name,omitempty" tf:"name,omitempty"`

	// Specifies the product of the image from the marketplace. Changing this forces a new resource to be created.
	Product *string `json:"product,omitempty" tf:"product,omitempty"`

	// Specifies the publisher of the image. Changing this forces a new resource to be created.
	Publisher *string `json:"publisher,omitempty" tf:"publisher,omitempty"`
}

func (*LinuxVirtualMachineScaleSetPlanObservation) DeepCopy

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

func (*LinuxVirtualMachineScaleSetPlanObservation) DeepCopyInto

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

type LinuxVirtualMachineScaleSetPlanParameters

type LinuxVirtualMachineScaleSetPlanParameters struct {

	// Specifies the name of the image from the marketplace. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	Name *string `json:"name" tf:"name,omitempty"`

	// Specifies the product of the image from the marketplace. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	Product *string `json:"product" tf:"product,omitempty"`

	// Specifies the publisher of the image. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	Publisher *string `json:"publisher" tf:"publisher,omitempty"`
}

func (*LinuxVirtualMachineScaleSetPlanParameters) DeepCopy

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

func (*LinuxVirtualMachineScaleSetPlanParameters) DeepCopyInto

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

type LinuxVirtualMachineScaleSetSecretInitParameters added in v0.35.0

type LinuxVirtualMachineScaleSetSecretInitParameters struct {

	// One or more certificate blocks as defined above.
	Certificate []SecretCertificateInitParameters `json:"certificate,omitempty" tf:"certificate,omitempty"`

	// The ID of the Key Vault from which all Secrets should be sourced.
	KeyVaultID *string `json:"keyVaultId,omitempty" tf:"key_vault_id,omitempty"`
}

func (*LinuxVirtualMachineScaleSetSecretInitParameters) DeepCopy added in v0.35.0

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

func (*LinuxVirtualMachineScaleSetSecretInitParameters) DeepCopyInto added in v0.35.0

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

type LinuxVirtualMachineScaleSetSecretObservation

type LinuxVirtualMachineScaleSetSecretObservation struct {

	// One or more certificate blocks as defined above.
	Certificate []SecretCertificateObservation `json:"certificate,omitempty" tf:"certificate,omitempty"`

	// The ID of the Key Vault from which all Secrets should be sourced.
	KeyVaultID *string `json:"keyVaultId,omitempty" tf:"key_vault_id,omitempty"`
}

func (*LinuxVirtualMachineScaleSetSecretObservation) DeepCopy

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

func (*LinuxVirtualMachineScaleSetSecretObservation) DeepCopyInto

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

type LinuxVirtualMachineScaleSetSecretParameters

type LinuxVirtualMachineScaleSetSecretParameters struct {

	// One or more certificate blocks as defined above.
	// +kubebuilder:validation:Optional
	Certificate []SecretCertificateParameters `json:"certificate" tf:"certificate,omitempty"`

	// The ID of the Key Vault from which all Secrets should be sourced.
	// +kubebuilder:validation:Optional
	KeyVaultID *string `json:"keyVaultId" tf:"key_vault_id,omitempty"`
}

func (*LinuxVirtualMachineScaleSetSecretParameters) DeepCopy

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

func (*LinuxVirtualMachineScaleSetSecretParameters) DeepCopyInto

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

type LinuxVirtualMachineScaleSetSourceImageReferenceInitParameters added in v0.35.0

type LinuxVirtualMachineScaleSetSourceImageReferenceInitParameters struct {

	// Specifies the offer of the image used to create the virtual machines. Changing this forces a new resource to be created.
	Offer *string `json:"offer,omitempty" tf:"offer,omitempty"`

	// Specifies the publisher of the image used to create the virtual machines. Changing this forces a new resource to be created.
	Publisher *string `json:"publisher,omitempty" tf:"publisher,omitempty"`

	// Specifies the SKU of the image used to create the virtual machines.
	Sku *string `json:"sku,omitempty" tf:"sku,omitempty"`

	// Specifies the version of the image used to create the virtual machines.
	Version *string `json:"version,omitempty" tf:"version,omitempty"`
}

func (*LinuxVirtualMachineScaleSetSourceImageReferenceInitParameters) DeepCopy added in v0.35.0

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

func (*LinuxVirtualMachineScaleSetSourceImageReferenceInitParameters) DeepCopyInto added in v0.35.0

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

type LinuxVirtualMachineScaleSetSourceImageReferenceObservation

type LinuxVirtualMachineScaleSetSourceImageReferenceObservation struct {

	// Specifies the offer of the image used to create the virtual machines. Changing this forces a new resource to be created.
	Offer *string `json:"offer,omitempty" tf:"offer,omitempty"`

	// Specifies the publisher of the image used to create the virtual machines. Changing this forces a new resource to be created.
	Publisher *string `json:"publisher,omitempty" tf:"publisher,omitempty"`

	// Specifies the SKU of the image used to create the virtual machines.
	Sku *string `json:"sku,omitempty" tf:"sku,omitempty"`

	// Specifies the version of the image used to create the virtual machines.
	Version *string `json:"version,omitempty" tf:"version,omitempty"`
}

func (*LinuxVirtualMachineScaleSetSourceImageReferenceObservation) DeepCopy

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

func (*LinuxVirtualMachineScaleSetSourceImageReferenceObservation) DeepCopyInto

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

type LinuxVirtualMachineScaleSetSourceImageReferenceParameters

type LinuxVirtualMachineScaleSetSourceImageReferenceParameters struct {

	// Specifies the offer of the image used to create the virtual machines. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	Offer *string `json:"offer" tf:"offer,omitempty"`

	// Specifies the publisher of the image used to create the virtual machines. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	Publisher *string `json:"publisher" tf:"publisher,omitempty"`

	// Specifies the SKU of the image used to create the virtual machines.
	// +kubebuilder:validation:Optional
	Sku *string `json:"sku" tf:"sku,omitempty"`

	// Specifies the version of the image used to create the virtual machines.
	// +kubebuilder:validation:Optional
	Version *string `json:"version" tf:"version,omitempty"`
}

func (*LinuxVirtualMachineScaleSetSourceImageReferenceParameters) DeepCopy

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

func (*LinuxVirtualMachineScaleSetSourceImageReferenceParameters) DeepCopyInto

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

type LinuxVirtualMachineScaleSetSpec

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

LinuxVirtualMachineScaleSetSpec defines the desired state of LinuxVirtualMachineScaleSet

func (*LinuxVirtualMachineScaleSetSpec) DeepCopy

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

func (*LinuxVirtualMachineScaleSetSpec) DeepCopyInto

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

type LinuxVirtualMachineScaleSetStatus

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

LinuxVirtualMachineScaleSetStatus defines the observed state of LinuxVirtualMachineScaleSet.

func (*LinuxVirtualMachineScaleSetStatus) DeepCopy

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

func (*LinuxVirtualMachineScaleSetStatus) DeepCopyInto

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

type LinuxVirtualMachineScaleSetTerminationNotificationInitParameters added in v0.35.0

type LinuxVirtualMachineScaleSetTerminationNotificationInitParameters struct {

	// Should the termination notification be enabled on this Virtual Machine Scale Set?
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// Length of time (in minutes, between 5 and 15) a notification to be sent to the VM on the instance metadata server till the VM gets deleted. The time duration should be specified in ISO 8601 format. Defaults to PT5M.
	Timeout *string `json:"timeout,omitempty" tf:"timeout,omitempty"`
}

func (*LinuxVirtualMachineScaleSetTerminationNotificationInitParameters) DeepCopy added in v0.35.0

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

func (*LinuxVirtualMachineScaleSetTerminationNotificationInitParameters) DeepCopyInto added in v0.35.0

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

type LinuxVirtualMachineScaleSetTerminationNotificationObservation

type LinuxVirtualMachineScaleSetTerminationNotificationObservation struct {

	// Should the termination notification be enabled on this Virtual Machine Scale Set?
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// Length of time (in minutes, between 5 and 15) a notification to be sent to the VM on the instance metadata server till the VM gets deleted. The time duration should be specified in ISO 8601 format. Defaults to PT5M.
	Timeout *string `json:"timeout,omitempty" tf:"timeout,omitempty"`
}

func (*LinuxVirtualMachineScaleSetTerminationNotificationObservation) DeepCopy

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

func (*LinuxVirtualMachineScaleSetTerminationNotificationObservation) DeepCopyInto

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

type LinuxVirtualMachineScaleSetTerminationNotificationParameters

type LinuxVirtualMachineScaleSetTerminationNotificationParameters struct {

	// Should the termination notification be enabled on this Virtual Machine Scale Set?
	// +kubebuilder:validation:Optional
	Enabled *bool `json:"enabled" tf:"enabled,omitempty"`

	// Length of time (in minutes, between 5 and 15) a notification to be sent to the VM on the instance metadata server till the VM gets deleted. The time duration should be specified in ISO 8601 format. Defaults to PT5M.
	// +kubebuilder:validation:Optional
	Timeout *string `json:"timeout,omitempty" tf:"timeout,omitempty"`
}

func (*LinuxVirtualMachineScaleSetTerminationNotificationParameters) DeepCopy

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

func (*LinuxVirtualMachineScaleSetTerminationNotificationParameters) DeepCopyInto

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

type LinuxVirtualMachineSpec

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

LinuxVirtualMachineSpec defines the desired state of LinuxVirtualMachine

func (*LinuxVirtualMachineSpec) DeepCopy

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

func (*LinuxVirtualMachineSpec) DeepCopyInto

func (in *LinuxVirtualMachineSpec) DeepCopyInto(out *LinuxVirtualMachineSpec)

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

type LinuxVirtualMachineStatus

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

LinuxVirtualMachineStatus defines the observed state of LinuxVirtualMachine.

func (*LinuxVirtualMachineStatus) DeepCopy

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

func (*LinuxVirtualMachineStatus) DeepCopyInto

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

type ManageActionInitParameters added in v0.35.0

type ManageActionInitParameters struct {

	// The command to install the Gallery Application. Changing this forces a new resource to be created.
	Install *string `json:"install,omitempty" tf:"install,omitempty"`

	// The command to remove the Gallery Application. Changing this forces a new resource to be created.
	Remove *string `json:"remove,omitempty" tf:"remove,omitempty"`

	// The command to update the Gallery Application. Changing this forces a new resource to be created.
	Update *string `json:"update,omitempty" tf:"update,omitempty"`
}

func (*ManageActionInitParameters) DeepCopy added in v0.35.0

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

func (*ManageActionInitParameters) DeepCopyInto added in v0.35.0

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

type ManageActionObservation added in v0.28.0

type ManageActionObservation struct {

	// The command to install the Gallery Application. Changing this forces a new resource to be created.
	Install *string `json:"install,omitempty" tf:"install,omitempty"`

	// The command to remove the Gallery Application. Changing this forces a new resource to be created.
	Remove *string `json:"remove,omitempty" tf:"remove,omitempty"`

	// The command to update the Gallery Application. Changing this forces a new resource to be created.
	Update *string `json:"update,omitempty" tf:"update,omitempty"`
}

func (*ManageActionObservation) DeepCopy added in v0.28.0

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

func (*ManageActionObservation) DeepCopyInto added in v0.28.0

func (in *ManageActionObservation) DeepCopyInto(out *ManageActionObservation)

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

type ManageActionParameters added in v0.28.0

type ManageActionParameters struct {

	// The command to install the Gallery Application. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	Install *string `json:"install" tf:"install,omitempty"`

	// The command to remove the Gallery Application. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	Remove *string `json:"remove" tf:"remove,omitempty"`

	// The command to update the Gallery Application. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	Update *string `json:"update,omitempty" tf:"update,omitempty"`
}

func (*ManageActionParameters) DeepCopy added in v0.28.0

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

func (*ManageActionParameters) DeepCopyInto added in v0.28.0

func (in *ManageActionParameters) DeepCopyInto(out *ManageActionParameters)

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

type ManagedDisk

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

ManagedDisk is the Schema for the ManagedDisks API. Manages a Managed Disk. +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 (*ManagedDisk) DeepCopy

func (in *ManagedDisk) DeepCopy() *ManagedDisk

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

func (*ManagedDisk) DeepCopyInto

func (in *ManagedDisk) DeepCopyInto(out *ManagedDisk)

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

func (*ManagedDisk) DeepCopyObject

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

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

func (*ManagedDisk) GetCondition

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

GetCondition of this ManagedDisk.

func (*ManagedDisk) GetConnectionDetailsMapping

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

GetConnectionDetailsMapping for this ManagedDisk

func (*ManagedDisk) GetDeletionPolicy

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

GetDeletionPolicy of this ManagedDisk.

func (*ManagedDisk) GetID

func (tr *ManagedDisk) GetID() string

GetID returns ID of underlying Terraform resource of this ManagedDisk

func (*ManagedDisk) GetInitParameters added in v0.35.0

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

GetInitParameters of this ManagedDisk

func (*ManagedDisk) GetManagementPolicies added in v0.35.0

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

GetManagementPolicies of this ManagedDisk.

func (*ManagedDisk) GetMergedParameters added in v0.40.0

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

GetInitParameters of this ManagedDisk

func (*ManagedDisk) GetObservation

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

GetObservation of this ManagedDisk

func (*ManagedDisk) GetParameters

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

GetParameters of this ManagedDisk

func (*ManagedDisk) GetProviderConfigReference

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

GetProviderConfigReference of this ManagedDisk.

func (*ManagedDisk) GetPublishConnectionDetailsTo

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

GetPublishConnectionDetailsTo of this ManagedDisk.

func (*ManagedDisk) GetTerraformResourceType

func (mg *ManagedDisk) GetTerraformResourceType() string

GetTerraformResourceType returns Terraform resource type for this ManagedDisk

func (*ManagedDisk) GetTerraformSchemaVersion

func (tr *ManagedDisk) GetTerraformSchemaVersion() int

GetTerraformSchemaVersion returns the associated Terraform schema version

func (*ManagedDisk) GetWriteConnectionSecretToReference

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

GetWriteConnectionSecretToReference of this ManagedDisk.

func (*ManagedDisk) Hub added in v0.42.1

func (tr *ManagedDisk) Hub()

Hub marks this type as a conversion hub.

func (*ManagedDisk) LateInitialize

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

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

func (*ManagedDisk) ResolveReferences

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

ResolveReferences of this ManagedDisk.

func (*ManagedDisk) SetConditions

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

SetConditions of this ManagedDisk.

func (*ManagedDisk) SetDeletionPolicy

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

SetDeletionPolicy of this ManagedDisk.

func (*ManagedDisk) SetManagementPolicies added in v0.35.0

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

SetManagementPolicies of this ManagedDisk.

func (*ManagedDisk) SetObservation

func (tr *ManagedDisk) SetObservation(obs map[string]any) error

SetObservation for this ManagedDisk

func (*ManagedDisk) SetParameters

func (tr *ManagedDisk) SetParameters(params map[string]any) error

SetParameters for this ManagedDisk

func (*ManagedDisk) SetProviderConfigReference

func (mg *ManagedDisk) SetProviderConfigReference(r *xpv1.Reference)

SetProviderConfigReference of this ManagedDisk.

func (*ManagedDisk) SetPublishConnectionDetailsTo

func (mg *ManagedDisk) SetPublishConnectionDetailsTo(r *xpv1.PublishConnectionDetailsTo)

SetPublishConnectionDetailsTo of this ManagedDisk.

func (*ManagedDisk) SetWriteConnectionSecretToReference

func (mg *ManagedDisk) SetWriteConnectionSecretToReference(r *xpv1.SecretReference)

SetWriteConnectionSecretToReference of this ManagedDisk.

type ManagedDiskInitParameters added in v0.35.0

type ManagedDiskInitParameters struct {

	// The method to use when creating the managed disk. Changing this forces a new resource to be created. Possible values include: * Import - Import a VHD file in to the managed disk (VHD specified with source_uri). * ImportSecure - Securely import a VHD file in to the managed disk (VHD specified with source_uri). * Empty - Create an empty managed disk. * Copy - Copy an existing managed disk or snapshot (specified with source_resource_id). * FromImage - Copy a Platform Image (specified with image_reference_id) * Restore - Set by Azure Backup or Site Recovery on a restored disk (specified with source_resource_id). * Upload - Upload a VHD disk with the help of SAS URL (to be used with upload_size_bytes).
	CreateOption *string `json:"createOption,omitempty" tf:"create_option,omitempty"`

	// The ID of the disk access resource for using private endpoints on disks.
	DiskAccessID *string `json:"diskAccessId,omitempty" tf:"disk_access_id,omitempty"`

	// The ID of a Disk Encryption Set which should be used to encrypt this Managed Disk. Conflicts with secure_vm_disk_encryption_set_id.
	DiskEncryptionSetID *string `json:"diskEncryptionSetId,omitempty" tf:"disk_encryption_set_id,omitempty"`

	// The number of IOPS allowed across all VMs mounting the shared disk as read-only; only settable for UltraSSD disks and PremiumV2 disks with shared disk enabled. One operation can transfer between 4k and 256k bytes.
	DiskIopsReadOnly *float64 `json:"diskIopsReadOnly,omitempty" tf:"disk_iops_read_only,omitempty"`

	// The number of IOPS allowed for this disk; only settable for UltraSSD disks and PremiumV2 disks. One operation can transfer between 4k and 256k bytes.
	DiskIopsReadWrite *float64 `json:"diskIopsReadWrite,omitempty" tf:"disk_iops_read_write,omitempty"`

	// The bandwidth allowed across all VMs mounting the shared disk as read-only; only settable for UltraSSD disks and PremiumV2 disks with shared disk enabled. MBps means millions of bytes per second.
	DiskMbpsReadOnly *float64 `json:"diskMbpsReadOnly,omitempty" tf:"disk_mbps_read_only,omitempty"`

	// The bandwidth allowed for this disk; only settable for UltraSSD disks and PremiumV2 disks. MBps means millions of bytes per second.
	DiskMbpsReadWrite *float64 `json:"diskMbpsReadWrite,omitempty" tf:"disk_mbps_read_write,omitempty"`

	// Specifies the size of the managed disk to create in gigabytes. If create_option is Copy or FromImage, then the value must be equal to or greater than the source's size. The size can only be increased.
	DiskSizeGb *float64 `json:"diskSizeGb,omitempty" tf:"disk_size_gb,omitempty"`

	// Specifies the Edge Zone within the Azure Region where this Managed Disk should exist. Changing this forces a new Managed Disk to be created.
	EdgeZone *string `json:"edgeZone,omitempty" tf:"edge_zone,omitempty"`

	// A encryption_settings block as defined below.
	EncryptionSettings []EncryptionSettingsInitParameters `json:"encryptionSettings,omitempty" tf:"encryption_settings,omitempty"`

	// ID of a Gallery Image Version to copy when create_option is FromImage. This field cannot be specified if image_reference_id is specified. Changing this forces a new resource to be created.
	GalleryImageReferenceID *string `json:"galleryImageReferenceId,omitempty" tf:"gallery_image_reference_id,omitempty"`

	// The HyperV Generation of the Disk when the source of an Import or Copy operation targets a source that contains an operating system. Possible values are V1 and V2. For ImportSecure it must be set to V2. Changing this forces a new resource to be created.
	HyperVGeneration *string `json:"hyperVGeneration,omitempty" tf:"hyper_v_generation,omitempty"`

	// ID of an existing platform/marketplace disk image to copy when create_option is FromImage. This field cannot be specified if gallery_image_reference_id is specified. Changing this forces a new resource to be created.
	ImageReferenceID *string `json:"imageReferenceId,omitempty" tf:"image_reference_id,omitempty"`

	// Specified 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"`

	// Logical Sector Size. Possible values are: 512 and 4096. Defaults to 4096. Changing this forces a new resource to be created.
	LogicalSectorSize *float64 `json:"logicalSectorSize,omitempty" tf:"logical_sector_size,omitempty"`

	// The maximum number of VMs that can attach to the disk at the same time. Value greater than one indicates a disk that can be mounted on multiple VMs at the same time.
	MaxShares *float64 `json:"maxShares,omitempty" tf:"max_shares,omitempty"`

	// Policy for accessing the disk via network. Allowed values are AllowAll, AllowPrivate, and DenyAll.
	NetworkAccessPolicy *string `json:"networkAccessPolicy,omitempty" tf:"network_access_policy,omitempty"`

	// Specifies if On-Demand Bursting is enabled for the Managed Disk.
	OnDemandBurstingEnabled *bool `json:"onDemandBurstingEnabled,omitempty" tf:"on_demand_bursting_enabled,omitempty"`

	// Specifies whether this Managed Disk should be optimized for frequent disk attachments (where a disk is attached/detached more than 5 times in a day). Defaults to false.
	OptimizedFrequentAttachEnabled *bool `json:"optimizedFrequentAttachEnabled,omitempty" tf:"optimized_frequent_attach_enabled,omitempty"`

	// Specify a value when the source of an Import, ImportSecure or Copy operation targets a source that contains an operating system. Valid values are Linux or Windows.
	OsType *string `json:"osType,omitempty" tf:"os_type,omitempty"`

	// Specifies whether Performance Plus is enabled for this Managed Disk. Defaults to false. Changing this forces a new resource to be created.
	PerformancePlusEnabled *bool `json:"performancePlusEnabled,omitempty" tf:"performance_plus_enabled,omitempty"`

	// Whether it is allowed to access the disk via public network. Defaults to true.
	PublicNetworkAccessEnabled *bool `json:"publicNetworkAccessEnabled,omitempty" tf:"public_network_access_enabled,omitempty"`

	// The ID of the Disk Encryption Set which should be used to Encrypt this OS Disk when the Virtual Machine is a Confidential VM. Conflicts with disk_encryption_set_id. Changing this forces a new resource to be created.
	SecureVMDiskEncryptionSetID *string `json:"secureVmDiskEncryptionSetId,omitempty" tf:"secure_vm_disk_encryption_set_id,omitempty"`

	// Security Type of the Managed Disk when it is used for a Confidential VM. Possible values are ConfidentialVM_VMGuestStateOnlyEncryptedWithPlatformKey, ConfidentialVM_DiskEncryptedWithPlatformKey and ConfidentialVM_DiskEncryptedWithCustomerKey. Changing this forces a new resource to be created.
	SecurityType *string `json:"securityType,omitempty" tf:"security_type,omitempty"`

	// The ID of an existing Managed Disk or Snapshot to copy when create_option is Copy or the recovery point to restore when create_option is Restore. Changing this forces a new resource to be created.
	// +crossplane:generate:reference:type=github.com/upbound/provider-azure/apis/compute/v1beta1.ManagedDisk
	// +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractResourceID()
	SourceResourceID *string `json:"sourceResourceId,omitempty" tf:"source_resource_id,omitempty"`

	// Reference to a ManagedDisk in compute to populate sourceResourceId.
	// +kubebuilder:validation:Optional
	SourceResourceIDRef *v1.Reference `json:"sourceResourceIdRef,omitempty" tf:"-"`

	// Selector for a ManagedDisk in compute to populate sourceResourceId.
	// +kubebuilder:validation:Optional
	SourceResourceIDSelector *v1.Selector `json:"sourceResourceIdSelector,omitempty" tf:"-"`

	// URI to a valid VHD file to be used when create_option is Import or ImportSecure. Changing this forces a new resource to be created.
	SourceURI *string `json:"sourceUri,omitempty" tf:"source_uri,omitempty"`

	// The ID of the Storage Account where the source_uri is located. Required when create_option is set to Import or ImportSecure. Changing this forces a new resource to be created.
	StorageAccountID *string `json:"storageAccountId,omitempty" tf:"storage_account_id,omitempty"`

	// The type of storage to use for the managed disk. Possible values are Standard_LRS, StandardSSD_ZRS, Premium_LRS, PremiumV2_LRS, Premium_ZRS, StandardSSD_LRS or UltraSSD_LRS.
	StorageAccountType *string `json:"storageAccountType,omitempty" tf:"storage_account_type,omitempty"`

	// A mapping of tags to assign to the resource.
	// +mapType=granular
	Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"`

	// The disk performance tier to use. Possible values are documented here. This feature is currently supported only for premium SSDs.
	Tier *string `json:"tier,omitempty" tf:"tier,omitempty"`

	// Specifies if Trusted Launch is enabled for the Managed Disk. Changing this forces a new resource to be created.
	TrustedLaunchEnabled *bool `json:"trustedLaunchEnabled,omitempty" tf:"trusted_launch_enabled,omitempty"`

	// Specifies the size of the managed disk to create in bytes. Required when create_option is Upload. The value must be equal to the source disk to be copied in bytes. Source disk size could be calculated with ls -l or wc -c. More information can be found at Copy a managed disk. Changing this forces a new resource to be created.
	UploadSizeBytes *float64 `json:"uploadSizeBytes,omitempty" tf:"upload_size_bytes,omitempty"`

	// Specifies the Availability Zone in which this Managed Disk should be located. Changing this property forces a new resource to be created.
	Zone *string `json:"zone,omitempty" tf:"zone,omitempty"`
}

func (*ManagedDiskInitParameters) DeepCopy added in v0.35.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ManagedDiskInitParameters.

func (*ManagedDiskInitParameters) DeepCopyInto added in v0.35.0

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ManagedDiskList

type ManagedDiskList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	Items           []ManagedDisk `json:"items"`
}

ManagedDiskList contains a list of ManagedDisks

func (*ManagedDiskList) DeepCopy

func (in *ManagedDiskList) DeepCopy() *ManagedDiskList

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ManagedDiskList.

func (*ManagedDiskList) DeepCopyInto

func (in *ManagedDiskList) DeepCopyInto(out *ManagedDiskList)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*ManagedDiskList) DeepCopyObject

func (in *ManagedDiskList) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

func (*ManagedDiskList) GetItems

func (l *ManagedDiskList) GetItems() []resource.Managed

GetItems of this ManagedDiskList.

type ManagedDiskObservation

type ManagedDiskObservation struct {

	// The method to use when creating the managed disk. Changing this forces a new resource to be created. Possible values include: * Import - Import a VHD file in to the managed disk (VHD specified with source_uri). * ImportSecure - Securely import a VHD file in to the managed disk (VHD specified with source_uri). * Empty - Create an empty managed disk. * Copy - Copy an existing managed disk or snapshot (specified with source_resource_id). * FromImage - Copy a Platform Image (specified with image_reference_id) * Restore - Set by Azure Backup or Site Recovery on a restored disk (specified with source_resource_id). * Upload - Upload a VHD disk with the help of SAS URL (to be used with upload_size_bytes).
	CreateOption *string `json:"createOption,omitempty" tf:"create_option,omitempty"`

	// The ID of the disk access resource for using private endpoints on disks.
	DiskAccessID *string `json:"diskAccessId,omitempty" tf:"disk_access_id,omitempty"`

	// The ID of a Disk Encryption Set which should be used to encrypt this Managed Disk. Conflicts with secure_vm_disk_encryption_set_id.
	DiskEncryptionSetID *string `json:"diskEncryptionSetId,omitempty" tf:"disk_encryption_set_id,omitempty"`

	// The number of IOPS allowed across all VMs mounting the shared disk as read-only; only settable for UltraSSD disks and PremiumV2 disks with shared disk enabled. One operation can transfer between 4k and 256k bytes.
	DiskIopsReadOnly *float64 `json:"diskIopsReadOnly,omitempty" tf:"disk_iops_read_only,omitempty"`

	// The number of IOPS allowed for this disk; only settable for UltraSSD disks and PremiumV2 disks. One operation can transfer between 4k and 256k bytes.
	DiskIopsReadWrite *float64 `json:"diskIopsReadWrite,omitempty" tf:"disk_iops_read_write,omitempty"`

	// The bandwidth allowed across all VMs mounting the shared disk as read-only; only settable for UltraSSD disks and PremiumV2 disks with shared disk enabled. MBps means millions of bytes per second.
	DiskMbpsReadOnly *float64 `json:"diskMbpsReadOnly,omitempty" tf:"disk_mbps_read_only,omitempty"`

	// The bandwidth allowed for this disk; only settable for UltraSSD disks and PremiumV2 disks. MBps means millions of bytes per second.
	DiskMbpsReadWrite *float64 `json:"diskMbpsReadWrite,omitempty" tf:"disk_mbps_read_write,omitempty"`

	// Specifies the size of the managed disk to create in gigabytes. If create_option is Copy or FromImage, then the value must be equal to or greater than the source's size. The size can only be increased.
	DiskSizeGb *float64 `json:"diskSizeGb,omitempty" tf:"disk_size_gb,omitempty"`

	// Specifies the Edge Zone within the Azure Region where this Managed Disk should exist. Changing this forces a new Managed Disk to be created.
	EdgeZone *string `json:"edgeZone,omitempty" tf:"edge_zone,omitempty"`

	// A encryption_settings block as defined below.
	EncryptionSettings []EncryptionSettingsObservation `json:"encryptionSettings,omitempty" tf:"encryption_settings,omitempty"`

	// ID of a Gallery Image Version to copy when create_option is FromImage. This field cannot be specified if image_reference_id is specified. Changing this forces a new resource to be created.
	GalleryImageReferenceID *string `json:"galleryImageReferenceId,omitempty" tf:"gallery_image_reference_id,omitempty"`

	// The HyperV Generation of the Disk when the source of an Import or Copy operation targets a source that contains an operating system. Possible values are V1 and V2. For ImportSecure it must be set to V2. Changing this forces a new resource to be created.
	HyperVGeneration *string `json:"hyperVGeneration,omitempty" tf:"hyper_v_generation,omitempty"`

	// The ID of the Managed Disk.
	ID *string `json:"id,omitempty" tf:"id,omitempty"`

	// ID of an existing platform/marketplace disk image to copy when create_option is FromImage. This field cannot be specified if gallery_image_reference_id is specified. Changing this forces a new resource to be created.
	ImageReferenceID *string `json:"imageReferenceId,omitempty" tf:"image_reference_id,omitempty"`

	// Specified 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"`

	// Logical Sector Size. Possible values are: 512 and 4096. Defaults to 4096. Changing this forces a new resource to be created.
	LogicalSectorSize *float64 `json:"logicalSectorSize,omitempty" tf:"logical_sector_size,omitempty"`

	// The maximum number of VMs that can attach to the disk at the same time. Value greater than one indicates a disk that can be mounted on multiple VMs at the same time.
	MaxShares *float64 `json:"maxShares,omitempty" tf:"max_shares,omitempty"`

	// Policy for accessing the disk via network. Allowed values are AllowAll, AllowPrivate, and DenyAll.
	NetworkAccessPolicy *string `json:"networkAccessPolicy,omitempty" tf:"network_access_policy,omitempty"`

	// Specifies if On-Demand Bursting is enabled for the Managed Disk.
	OnDemandBurstingEnabled *bool `json:"onDemandBurstingEnabled,omitempty" tf:"on_demand_bursting_enabled,omitempty"`

	// Specifies whether this Managed Disk should be optimized for frequent disk attachments (where a disk is attached/detached more than 5 times in a day). Defaults to false.
	OptimizedFrequentAttachEnabled *bool `json:"optimizedFrequentAttachEnabled,omitempty" tf:"optimized_frequent_attach_enabled,omitempty"`

	// Specify a value when the source of an Import, ImportSecure or Copy operation targets a source that contains an operating system. Valid values are Linux or Windows.
	OsType *string `json:"osType,omitempty" tf:"os_type,omitempty"`

	// Specifies whether Performance Plus is enabled for this Managed Disk. Defaults to false. Changing this forces a new resource to be created.
	PerformancePlusEnabled *bool `json:"performancePlusEnabled,omitempty" tf:"performance_plus_enabled,omitempty"`

	// Whether it is allowed to access the disk via public network. Defaults to true.
	PublicNetworkAccessEnabled *bool `json:"publicNetworkAccessEnabled,omitempty" tf:"public_network_access_enabled,omitempty"`

	// The name of the Resource Group where the Managed Disk should exist. Changing this forces a new resource to be created.
	ResourceGroupName *string `json:"resourceGroupName,omitempty" tf:"resource_group_name,omitempty"`

	// The ID of the Disk Encryption Set which should be used to Encrypt this OS Disk when the Virtual Machine is a Confidential VM. Conflicts with disk_encryption_set_id. Changing this forces a new resource to be created.
	SecureVMDiskEncryptionSetID *string `json:"secureVmDiskEncryptionSetId,omitempty" tf:"secure_vm_disk_encryption_set_id,omitempty"`

	// Security Type of the Managed Disk when it is used for a Confidential VM. Possible values are ConfidentialVM_VMGuestStateOnlyEncryptedWithPlatformKey, ConfidentialVM_DiskEncryptedWithPlatformKey and ConfidentialVM_DiskEncryptedWithCustomerKey. Changing this forces a new resource to be created.
	SecurityType *string `json:"securityType,omitempty" tf:"security_type,omitempty"`

	// The ID of an existing Managed Disk or Snapshot to copy when create_option is Copy or the recovery point to restore when create_option is Restore. Changing this forces a new resource to be created.
	SourceResourceID *string `json:"sourceResourceId,omitempty" tf:"source_resource_id,omitempty"`

	// URI to a valid VHD file to be used when create_option is Import or ImportSecure. Changing this forces a new resource to be created.
	SourceURI *string `json:"sourceUri,omitempty" tf:"source_uri,omitempty"`

	// The ID of the Storage Account where the source_uri is located. Required when create_option is set to Import or ImportSecure. Changing this forces a new resource to be created.
	StorageAccountID *string `json:"storageAccountId,omitempty" tf:"storage_account_id,omitempty"`

	// The type of storage to use for the managed disk. Possible values are Standard_LRS, StandardSSD_ZRS, Premium_LRS, PremiumV2_LRS, Premium_ZRS, StandardSSD_LRS or UltraSSD_LRS.
	StorageAccountType *string `json:"storageAccountType,omitempty" tf:"storage_account_type,omitempty"`

	// A mapping of tags to assign to the resource.
	// +mapType=granular
	Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"`

	// The disk performance tier to use. Possible values are documented here. This feature is currently supported only for premium SSDs.
	Tier *string `json:"tier,omitempty" tf:"tier,omitempty"`

	// Specifies if Trusted Launch is enabled for the Managed Disk. Changing this forces a new resource to be created.
	TrustedLaunchEnabled *bool `json:"trustedLaunchEnabled,omitempty" tf:"trusted_launch_enabled,omitempty"`

	// Specifies the size of the managed disk to create in bytes. Required when create_option is Upload. The value must be equal to the source disk to be copied in bytes. Source disk size could be calculated with ls -l or wc -c. More information can be found at Copy a managed disk. Changing this forces a new resource to be created.
	UploadSizeBytes *float64 `json:"uploadSizeBytes,omitempty" tf:"upload_size_bytes,omitempty"`

	// Specifies the Availability Zone in which this Managed Disk should be located. Changing this property forces a new resource to be created.
	Zone *string `json:"zone,omitempty" tf:"zone,omitempty"`
}

func (*ManagedDiskObservation) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ManagedDiskObservation.

func (*ManagedDiskObservation) DeepCopyInto

func (in *ManagedDiskObservation) DeepCopyInto(out *ManagedDiskObservation)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ManagedDiskParameters

type ManagedDiskParameters struct {

	// The method to use when creating the managed disk. Changing this forces a new resource to be created. Possible values include: * Import - Import a VHD file in to the managed disk (VHD specified with source_uri). * ImportSecure - Securely import a VHD file in to the managed disk (VHD specified with source_uri). * Empty - Create an empty managed disk. * Copy - Copy an existing managed disk or snapshot (specified with source_resource_id). * FromImage - Copy a Platform Image (specified with image_reference_id) * Restore - Set by Azure Backup or Site Recovery on a restored disk (specified with source_resource_id). * Upload - Upload a VHD disk with the help of SAS URL (to be used with upload_size_bytes).
	// +kubebuilder:validation:Optional
	CreateOption *string `json:"createOption,omitempty" tf:"create_option,omitempty"`

	// The ID of the disk access resource for using private endpoints on disks.
	// +kubebuilder:validation:Optional
	DiskAccessID *string `json:"diskAccessId,omitempty" tf:"disk_access_id,omitempty"`

	// The ID of a Disk Encryption Set which should be used to encrypt this Managed Disk. Conflicts with secure_vm_disk_encryption_set_id.
	// +kubebuilder:validation:Optional
	DiskEncryptionSetID *string `json:"diskEncryptionSetId,omitempty" tf:"disk_encryption_set_id,omitempty"`

	// The number of IOPS allowed across all VMs mounting the shared disk as read-only; only settable for UltraSSD disks and PremiumV2 disks with shared disk enabled. One operation can transfer between 4k and 256k bytes.
	// +kubebuilder:validation:Optional
	DiskIopsReadOnly *float64 `json:"diskIopsReadOnly,omitempty" tf:"disk_iops_read_only,omitempty"`

	// The number of IOPS allowed for this disk; only settable for UltraSSD disks and PremiumV2 disks. One operation can transfer between 4k and 256k bytes.
	// +kubebuilder:validation:Optional
	DiskIopsReadWrite *float64 `json:"diskIopsReadWrite,omitempty" tf:"disk_iops_read_write,omitempty"`

	// The bandwidth allowed across all VMs mounting the shared disk as read-only; only settable for UltraSSD disks and PremiumV2 disks with shared disk enabled. MBps means millions of bytes per second.
	// +kubebuilder:validation:Optional
	DiskMbpsReadOnly *float64 `json:"diskMbpsReadOnly,omitempty" tf:"disk_mbps_read_only,omitempty"`

	// The bandwidth allowed for this disk; only settable for UltraSSD disks and PremiumV2 disks. MBps means millions of bytes per second.
	// +kubebuilder:validation:Optional
	DiskMbpsReadWrite *float64 `json:"diskMbpsReadWrite,omitempty" tf:"disk_mbps_read_write,omitempty"`

	// Specifies the size of the managed disk to create in gigabytes. If create_option is Copy or FromImage, then the value must be equal to or greater than the source's size. The size can only be increased.
	// +kubebuilder:validation:Optional
	DiskSizeGb *float64 `json:"diskSizeGb,omitempty" tf:"disk_size_gb,omitempty"`

	// Specifies the Edge Zone within the Azure Region where this Managed Disk should exist. Changing this forces a new Managed Disk to be created.
	// +kubebuilder:validation:Optional
	EdgeZone *string `json:"edgeZone,omitempty" tf:"edge_zone,omitempty"`

	// A encryption_settings block as defined below.
	// +kubebuilder:validation:Optional
	EncryptionSettings []EncryptionSettingsParameters `json:"encryptionSettings,omitempty" tf:"encryption_settings,omitempty"`

	// ID of a Gallery Image Version to copy when create_option is FromImage. This field cannot be specified if image_reference_id is specified. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	GalleryImageReferenceID *string `json:"galleryImageReferenceId,omitempty" tf:"gallery_image_reference_id,omitempty"`

	// The HyperV Generation of the Disk when the source of an Import or Copy operation targets a source that contains an operating system. Possible values are V1 and V2. For ImportSecure it must be set to V2. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	HyperVGeneration *string `json:"hyperVGeneration,omitempty" tf:"hyper_v_generation,omitempty"`

	// ID of an existing platform/marketplace disk image to copy when create_option is FromImage. This field cannot be specified if gallery_image_reference_id is specified. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	ImageReferenceID *string `json:"imageReferenceId,omitempty" tf:"image_reference_id,omitempty"`

	// Specified 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"`

	// Logical Sector Size. Possible values are: 512 and 4096. Defaults to 4096. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	LogicalSectorSize *float64 `json:"logicalSectorSize,omitempty" tf:"logical_sector_size,omitempty"`

	// The maximum number of VMs that can attach to the disk at the same time. Value greater than one indicates a disk that can be mounted on multiple VMs at the same time.
	// +kubebuilder:validation:Optional
	MaxShares *float64 `json:"maxShares,omitempty" tf:"max_shares,omitempty"`

	// Policy for accessing the disk via network. Allowed values are AllowAll, AllowPrivate, and DenyAll.
	// +kubebuilder:validation:Optional
	NetworkAccessPolicy *string `json:"networkAccessPolicy,omitempty" tf:"network_access_policy,omitempty"`

	// Specifies if On-Demand Bursting is enabled for the Managed Disk.
	// +kubebuilder:validation:Optional
	OnDemandBurstingEnabled *bool `json:"onDemandBurstingEnabled,omitempty" tf:"on_demand_bursting_enabled,omitempty"`

	// Specifies whether this Managed Disk should be optimized for frequent disk attachments (where a disk is attached/detached more than 5 times in a day). Defaults to false.
	// +kubebuilder:validation:Optional
	OptimizedFrequentAttachEnabled *bool `json:"optimizedFrequentAttachEnabled,omitempty" tf:"optimized_frequent_attach_enabled,omitempty"`

	// Specify a value when the source of an Import, ImportSecure or Copy operation targets a source that contains an operating system. Valid values are Linux or Windows.
	// +kubebuilder:validation:Optional
	OsType *string `json:"osType,omitempty" tf:"os_type,omitempty"`

	// Specifies whether Performance Plus is enabled for this Managed Disk. Defaults to false. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	PerformancePlusEnabled *bool `json:"performancePlusEnabled,omitempty" tf:"performance_plus_enabled,omitempty"`

	// Whether it is allowed to access the disk via public network. Defaults to true.
	// +kubebuilder:validation:Optional
	PublicNetworkAccessEnabled *bool `json:"publicNetworkAccessEnabled,omitempty" tf:"public_network_access_enabled,omitempty"`

	// The name of the Resource Group where the Managed Disk should exist. 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:"-"`

	// The ID of the Disk Encryption Set which should be used to Encrypt this OS Disk when the Virtual Machine is a Confidential VM. Conflicts with disk_encryption_set_id. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	SecureVMDiskEncryptionSetID *string `json:"secureVmDiskEncryptionSetId,omitempty" tf:"secure_vm_disk_encryption_set_id,omitempty"`

	// Security Type of the Managed Disk when it is used for a Confidential VM. Possible values are ConfidentialVM_VMGuestStateOnlyEncryptedWithPlatformKey, ConfidentialVM_DiskEncryptedWithPlatformKey and ConfidentialVM_DiskEncryptedWithCustomerKey. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	SecurityType *string `json:"securityType,omitempty" tf:"security_type,omitempty"`

	// The ID of an existing Managed Disk or Snapshot to copy when create_option is Copy or the recovery point to restore when create_option is Restore. Changing this forces a new resource to be created.
	// +crossplane:generate:reference:type=github.com/upbound/provider-azure/apis/compute/v1beta1.ManagedDisk
	// +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractResourceID()
	// +kubebuilder:validation:Optional
	SourceResourceID *string `json:"sourceResourceId,omitempty" tf:"source_resource_id,omitempty"`

	// Reference to a ManagedDisk in compute to populate sourceResourceId.
	// +kubebuilder:validation:Optional
	SourceResourceIDRef *v1.Reference `json:"sourceResourceIdRef,omitempty" tf:"-"`

	// Selector for a ManagedDisk in compute to populate sourceResourceId.
	// +kubebuilder:validation:Optional
	SourceResourceIDSelector *v1.Selector `json:"sourceResourceIdSelector,omitempty" tf:"-"`

	// URI to a valid VHD file to be used when create_option is Import or ImportSecure. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	SourceURI *string `json:"sourceUri,omitempty" tf:"source_uri,omitempty"`

	// The ID of the Storage Account where the source_uri is located. Required when create_option is set to Import or ImportSecure. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	StorageAccountID *string `json:"storageAccountId,omitempty" tf:"storage_account_id,omitempty"`

	// The type of storage to use for the managed disk. Possible values are Standard_LRS, StandardSSD_ZRS, Premium_LRS, PremiumV2_LRS, Premium_ZRS, StandardSSD_LRS or UltraSSD_LRS.
	// +kubebuilder:validation:Optional
	StorageAccountType *string `json:"storageAccountType,omitempty" tf:"storage_account_type,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"`

	// The disk performance tier to use. Possible values are documented here. This feature is currently supported only for premium SSDs.
	// +kubebuilder:validation:Optional
	Tier *string `json:"tier,omitempty" tf:"tier,omitempty"`

	// Specifies if Trusted Launch is enabled for the Managed Disk. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	TrustedLaunchEnabled *bool `json:"trustedLaunchEnabled,omitempty" tf:"trusted_launch_enabled,omitempty"`

	// Specifies the size of the managed disk to create in bytes. Required when create_option is Upload. The value must be equal to the source disk to be copied in bytes. Source disk size could be calculated with ls -l or wc -c. More information can be found at Copy a managed disk. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	UploadSizeBytes *float64 `json:"uploadSizeBytes,omitempty" tf:"upload_size_bytes,omitempty"`

	// Specifies the Availability Zone in which this Managed Disk should be located. Changing this property forces a new resource to be created.
	// +kubebuilder:validation:Optional
	Zone *string `json:"zone,omitempty" tf:"zone,omitempty"`
}

func (*ManagedDiskParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ManagedDiskParameters.

func (*ManagedDiskParameters) DeepCopyInto

func (in *ManagedDiskParameters) DeepCopyInto(out *ManagedDiskParameters)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ManagedDiskSASToken added in v0.29.0

type ManagedDiskSASToken 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.accessLevel) || (has(self.initProvider) && has(self.initProvider.accessLevel))",message="spec.forProvider.accessLevel is a required parameter"
	// +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.durationInSeconds) || (has(self.initProvider) && has(self.initProvider.durationInSeconds))",message="spec.forProvider.durationInSeconds is a required parameter"
	Spec   ManagedDiskSASTokenSpec   `json:"spec"`
	Status ManagedDiskSASTokenStatus `json:"status,omitempty"`
}

ManagedDiskSASToken is the Schema for the ManagedDiskSASTokens API. Manages a Disk SAS Token. +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 (*ManagedDiskSASToken) DeepCopy added in v0.29.0

func (in *ManagedDiskSASToken) DeepCopy() *ManagedDiskSASToken

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ManagedDiskSASToken.

func (*ManagedDiskSASToken) DeepCopyInto added in v0.29.0

func (in *ManagedDiskSASToken) DeepCopyInto(out *ManagedDiskSASToken)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*ManagedDiskSASToken) DeepCopyObject added in v0.29.0

func (in *ManagedDiskSASToken) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

func (*ManagedDiskSASToken) GetCondition added in v0.29.0

func (mg *ManagedDiskSASToken) GetCondition(ct xpv1.ConditionType) xpv1.Condition

GetCondition of this ManagedDiskSASToken.

func (*ManagedDiskSASToken) GetConnectionDetailsMapping added in v0.29.0

func (tr *ManagedDiskSASToken) GetConnectionDetailsMapping() map[string]string

GetConnectionDetailsMapping for this ManagedDiskSASToken

func (*ManagedDiskSASToken) GetDeletionPolicy added in v0.29.0

func (mg *ManagedDiskSASToken) GetDeletionPolicy() xpv1.DeletionPolicy

GetDeletionPolicy of this ManagedDiskSASToken.

func (*ManagedDiskSASToken) GetID added in v0.29.0

func (tr *ManagedDiskSASToken) GetID() string

GetID returns ID of underlying Terraform resource of this ManagedDiskSASToken

func (*ManagedDiskSASToken) GetInitParameters added in v0.35.0

func (tr *ManagedDiskSASToken) GetInitParameters() (map[string]any, error)

GetInitParameters of this ManagedDiskSASToken

func (*ManagedDiskSASToken) GetManagementPolicies added in v0.35.0

func (mg *ManagedDiskSASToken) GetManagementPolicies() xpv1.ManagementPolicies

GetManagementPolicies of this ManagedDiskSASToken.

func (*ManagedDiskSASToken) GetMergedParameters added in v0.40.0

func (tr *ManagedDiskSASToken) GetMergedParameters(shouldMergeInitProvider bool) (map[string]any, error)

GetInitParameters of this ManagedDiskSASToken

func (*ManagedDiskSASToken) GetObservation added in v0.29.0

func (tr *ManagedDiskSASToken) GetObservation() (map[string]any, error)

GetObservation of this ManagedDiskSASToken

func (*ManagedDiskSASToken) GetParameters added in v0.29.0

func (tr *ManagedDiskSASToken) GetParameters() (map[string]any, error)

GetParameters of this ManagedDiskSASToken

func (*ManagedDiskSASToken) GetProviderConfigReference added in v0.29.0

func (mg *ManagedDiskSASToken) GetProviderConfigReference() *xpv1.Reference

GetProviderConfigReference of this ManagedDiskSASToken.

func (*ManagedDiskSASToken) GetPublishConnectionDetailsTo added in v0.29.0

func (mg *ManagedDiskSASToken) GetPublishConnectionDetailsTo() *xpv1.PublishConnectionDetailsTo

GetPublishConnectionDetailsTo of this ManagedDiskSASToken.

func (*ManagedDiskSASToken) GetTerraformResourceType added in v0.29.0

func (mg *ManagedDiskSASToken) GetTerraformResourceType() string

GetTerraformResourceType returns Terraform resource type for this ManagedDiskSASToken

func (*ManagedDiskSASToken) GetTerraformSchemaVersion added in v0.29.0

func (tr *ManagedDiskSASToken) GetTerraformSchemaVersion() int

GetTerraformSchemaVersion returns the associated Terraform schema version

func (*ManagedDiskSASToken) GetWriteConnectionSecretToReference added in v0.29.0

func (mg *ManagedDiskSASToken) GetWriteConnectionSecretToReference() *xpv1.SecretReference

GetWriteConnectionSecretToReference of this ManagedDiskSASToken.

func (*ManagedDiskSASToken) Hub added in v0.42.1

func (tr *ManagedDiskSASToken) Hub()

Hub marks this type as a conversion hub.

func (*ManagedDiskSASToken) LateInitialize added in v0.29.0

func (tr *ManagedDiskSASToken) LateInitialize(attrs []byte) (bool, error)

LateInitialize this ManagedDiskSASToken using its observed tfState. returns True if there are any spec changes for the resource.

func (*ManagedDiskSASToken) ResolveReferences added in v0.29.0

func (mg *ManagedDiskSASToken) ResolveReferences(ctx context.Context, c client.Reader) error

ResolveReferences of this ManagedDiskSASToken.

func (*ManagedDiskSASToken) SetConditions added in v0.29.0

func (mg *ManagedDiskSASToken) SetConditions(c ...xpv1.Condition)

SetConditions of this ManagedDiskSASToken.

func (*ManagedDiskSASToken) SetDeletionPolicy added in v0.29.0

func (mg *ManagedDiskSASToken) SetDeletionPolicy(r xpv1.DeletionPolicy)

SetDeletionPolicy of this ManagedDiskSASToken.

func (*ManagedDiskSASToken) SetManagementPolicies added in v0.35.0

func (mg *ManagedDiskSASToken) SetManagementPolicies(r xpv1.ManagementPolicies)

SetManagementPolicies of this ManagedDiskSASToken.

func (*ManagedDiskSASToken) SetObservation added in v0.29.0

func (tr *ManagedDiskSASToken) SetObservation(obs map[string]any) error

SetObservation for this ManagedDiskSASToken

func (*ManagedDiskSASToken) SetParameters added in v0.29.0

func (tr *ManagedDiskSASToken) SetParameters(params map[string]any) error

SetParameters for this ManagedDiskSASToken

func (*ManagedDiskSASToken) SetProviderConfigReference added in v0.29.0

func (mg *ManagedDiskSASToken) SetProviderConfigReference(r *xpv1.Reference)

SetProviderConfigReference of this ManagedDiskSASToken.

func (*ManagedDiskSASToken) SetPublishConnectionDetailsTo added in v0.29.0

func (mg *ManagedDiskSASToken) SetPublishConnectionDetailsTo(r *xpv1.PublishConnectionDetailsTo)

SetPublishConnectionDetailsTo of this ManagedDiskSASToken.

func (*ManagedDiskSASToken) SetWriteConnectionSecretToReference added in v0.29.0

func (mg *ManagedDiskSASToken) SetWriteConnectionSecretToReference(r *xpv1.SecretReference)

SetWriteConnectionSecretToReference of this ManagedDiskSASToken.

type ManagedDiskSASTokenInitParameters added in v0.35.0

type ManagedDiskSASTokenInitParameters struct {

	// The level of access required on the disk. Supported are Read, Write. Changing this forces a new resource to be created.
	AccessLevel *string `json:"accessLevel,omitempty" tf:"access_level,omitempty"`

	// The duration for which the export should be allowed. Should be between 30 & 4294967295 seconds. Changing this forces a new resource to be created.
	DurationInSeconds *float64 `json:"durationInSeconds,omitempty" tf:"duration_in_seconds,omitempty"`

	// The ID of an existing Managed Disk which should be exported. Changing this forces a new resource to be created.
	// +crossplane:generate:reference:type=github.com/upbound/provider-azure/apis/compute/v1beta1.ManagedDisk
	// +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractResourceID()
	ManagedDiskID *string `json:"managedDiskId,omitempty" tf:"managed_disk_id,omitempty"`

	// Reference to a ManagedDisk in compute to populate managedDiskId.
	// +kubebuilder:validation:Optional
	ManagedDiskIDRef *v1.Reference `json:"managedDiskIdRef,omitempty" tf:"-"`

	// Selector for a ManagedDisk in compute to populate managedDiskId.
	// +kubebuilder:validation:Optional
	ManagedDiskIDSelector *v1.Selector `json:"managedDiskIdSelector,omitempty" tf:"-"`
}

func (*ManagedDiskSASTokenInitParameters) DeepCopy added in v0.35.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ManagedDiskSASTokenInitParameters.

func (*ManagedDiskSASTokenInitParameters) DeepCopyInto added in v0.35.0

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ManagedDiskSASTokenList added in v0.29.0

type ManagedDiskSASTokenList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	Items           []ManagedDiskSASToken `json:"items"`
}

ManagedDiskSASTokenList contains a list of ManagedDiskSASTokens

func (*ManagedDiskSASTokenList) DeepCopy added in v0.29.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ManagedDiskSASTokenList.

func (*ManagedDiskSASTokenList) DeepCopyInto added in v0.29.0

func (in *ManagedDiskSASTokenList) DeepCopyInto(out *ManagedDiskSASTokenList)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*ManagedDiskSASTokenList) DeepCopyObject added in v0.29.0

func (in *ManagedDiskSASTokenList) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

func (*ManagedDiskSASTokenList) GetItems added in v0.29.0

func (l *ManagedDiskSASTokenList) GetItems() []resource.Managed

GetItems of this ManagedDiskSASTokenList.

type ManagedDiskSASTokenObservation added in v0.29.0

type ManagedDiskSASTokenObservation struct {

	// The level of access required on the disk. Supported are Read, Write. Changing this forces a new resource to be created.
	AccessLevel *string `json:"accessLevel,omitempty" tf:"access_level,omitempty"`

	// The duration for which the export should be allowed. Should be between 30 & 4294967295 seconds. Changing this forces a new resource to be created.
	DurationInSeconds *float64 `json:"durationInSeconds,omitempty" tf:"duration_in_seconds,omitempty"`

	// The ID of the Disk Export resource.
	ID *string `json:"id,omitempty" tf:"id,omitempty"`

	// The ID of an existing Managed Disk which should be exported. Changing this forces a new resource to be created.
	ManagedDiskID *string `json:"managedDiskId,omitempty" tf:"managed_disk_id,omitempty"`
}

func (*ManagedDiskSASTokenObservation) DeepCopy added in v0.29.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ManagedDiskSASTokenObservation.

func (*ManagedDiskSASTokenObservation) DeepCopyInto added in v0.29.0

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ManagedDiskSASTokenParameters added in v0.29.0

type ManagedDiskSASTokenParameters struct {

	// The level of access required on the disk. Supported are Read, Write. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	AccessLevel *string `json:"accessLevel,omitempty" tf:"access_level,omitempty"`

	// The duration for which the export should be allowed. Should be between 30 & 4294967295 seconds. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	DurationInSeconds *float64 `json:"durationInSeconds,omitempty" tf:"duration_in_seconds,omitempty"`

	// The ID of an existing Managed Disk which should be exported. Changing this forces a new resource to be created.
	// +crossplane:generate:reference:type=github.com/upbound/provider-azure/apis/compute/v1beta1.ManagedDisk
	// +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractResourceID()
	// +kubebuilder:validation:Optional
	ManagedDiskID *string `json:"managedDiskId,omitempty" tf:"managed_disk_id,omitempty"`

	// Reference to a ManagedDisk in compute to populate managedDiskId.
	// +kubebuilder:validation:Optional
	ManagedDiskIDRef *v1.Reference `json:"managedDiskIdRef,omitempty" tf:"-"`

	// Selector for a ManagedDisk in compute to populate managedDiskId.
	// +kubebuilder:validation:Optional
	ManagedDiskIDSelector *v1.Selector `json:"managedDiskIdSelector,omitempty" tf:"-"`
}

func (*ManagedDiskSASTokenParameters) DeepCopy added in v0.29.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ManagedDiskSASTokenParameters.

func (*ManagedDiskSASTokenParameters) DeepCopyInto added in v0.29.0

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ManagedDiskSASTokenSpec added in v0.29.0

type ManagedDiskSASTokenSpec struct {
	v1.ResourceSpec `json:",inline"`
	ForProvider     ManagedDiskSASTokenParameters `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 ManagedDiskSASTokenInitParameters `json:"initProvider,omitempty"`
}

ManagedDiskSASTokenSpec defines the desired state of ManagedDiskSASToken

func (*ManagedDiskSASTokenSpec) DeepCopy added in v0.29.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ManagedDiskSASTokenSpec.

func (*ManagedDiskSASTokenSpec) DeepCopyInto added in v0.29.0

func (in *ManagedDiskSASTokenSpec) DeepCopyInto(out *ManagedDiskSASTokenSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ManagedDiskSASTokenStatus added in v0.29.0

type ManagedDiskSASTokenStatus struct {
	v1.ResourceStatus `json:",inline"`
	AtProvider        ManagedDiskSASTokenObservation `json:"atProvider,omitempty"`
}

ManagedDiskSASTokenStatus defines the observed state of ManagedDiskSASToken.

func (*ManagedDiskSASTokenStatus) DeepCopy added in v0.29.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ManagedDiskSASTokenStatus.

func (*ManagedDiskSASTokenStatus) DeepCopyInto added in v0.29.0

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ManagedDiskSpec

type ManagedDiskSpec struct {
	v1.ResourceSpec `json:",inline"`
	ForProvider     ManagedDiskParameters `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 ManagedDiskInitParameters `json:"initProvider,omitempty"`
}

ManagedDiskSpec defines the desired state of ManagedDisk

func (*ManagedDiskSpec) DeepCopy

func (in *ManagedDiskSpec) DeepCopy() *ManagedDiskSpec

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ManagedDiskSpec.

func (*ManagedDiskSpec) DeepCopyInto

func (in *ManagedDiskSpec) DeepCopyInto(out *ManagedDiskSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ManagedDiskStatus

type ManagedDiskStatus struct {
	v1.ResourceStatus `json:",inline"`
	AtProvider        ManagedDiskObservation `json:"atProvider,omitempty"`
}

ManagedDiskStatus defines the observed state of ManagedDisk.

func (*ManagedDiskStatus) DeepCopy

func (in *ManagedDiskStatus) DeepCopy() *ManagedDiskStatus

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ManagedDiskStatus.

func (*ManagedDiskStatus) DeepCopyInto

func (in *ManagedDiskStatus) DeepCopyInto(out *ManagedDiskStatus)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type NetworkInterfaceIPConfigurationInitParameters added in v0.35.0

type NetworkInterfaceIPConfigurationInitParameters struct {

	// A list of Backend Address Pools IDs from a Application Gateway which this Virtual Machine Scale Set should be connected to.
	// +listType=set
	ApplicationGatewayBackendAddressPoolIds []*string `json:"applicationGatewayBackendAddressPoolIds,omitempty" tf:"application_gateway_backend_address_pool_ids,omitempty"`

	// A list of Application Security Group IDs which this Virtual Machine Scale Set should be connected to.
	// +listType=set
	ApplicationSecurityGroupIds []*string `json:"applicationSecurityGroupIds,omitempty" tf:"application_security_group_ids,omitempty"`

	// A list of Backend Address Pools IDs from a Load Balancer which this Virtual Machine Scale Set should be connected to.
	// +listType=set
	LoadBalancerBackendAddressPoolIds []*string `json:"loadBalancerBackendAddressPoolIds,omitempty" tf:"load_balancer_backend_address_pool_ids,omitempty"`

	// The Name of the Public IP Address Configuration.
	Name *string `json:"name,omitempty" tf:"name,omitempty"`

	// Is this the Primary IP Configuration? Possible values are true and false. Defaults to false.
	Primary *bool `json:"primary,omitempty" tf:"primary,omitempty"`

	// A public_ip_address block as defined below.
	PublicIPAddress []IPConfigurationPublicIPAddressInitParameters `json:"publicIpAddress,omitempty" tf:"public_ip_address,omitempty"`

	// The ID of the Subnet which this IP Configuration should be connected to.
	// +crossplane:generate:reference:type=github.com/upbound/provider-azure/apis/network/v1beta1.Subnet
	// +crossplane:generate:reference:extractor=github.com/upbound/provider-azure/apis/rconfig.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:"-"`

	// Specifies the version of the image used to create the virtual machines.
	Version *string `json:"version,omitempty" tf:"version,omitempty"`
}

func (*NetworkInterfaceIPConfigurationInitParameters) DeepCopy added in v0.35.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NetworkInterfaceIPConfigurationInitParameters.

func (*NetworkInterfaceIPConfigurationInitParameters) DeepCopyInto added in v0.35.0

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type NetworkInterfaceIPConfigurationObservation

type NetworkInterfaceIPConfigurationObservation struct {

	// A list of Backend Address Pools IDs from a Application Gateway which this Virtual Machine Scale Set should be connected to.
	// +listType=set
	ApplicationGatewayBackendAddressPoolIds []*string `json:"applicationGatewayBackendAddressPoolIds,omitempty" tf:"application_gateway_backend_address_pool_ids,omitempty"`

	// A list of Application Security Group IDs which this Virtual Machine Scale Set should be connected to.
	// +listType=set
	ApplicationSecurityGroupIds []*string `json:"applicationSecurityGroupIds,omitempty" tf:"application_security_group_ids,omitempty"`

	// A list of Backend Address Pools IDs from a Load Balancer which this Virtual Machine Scale Set should be connected to.
	// +listType=set
	LoadBalancerBackendAddressPoolIds []*string `json:"loadBalancerBackendAddressPoolIds,omitempty" tf:"load_balancer_backend_address_pool_ids,omitempty"`

	// The Name of the Public IP Address Configuration.
	Name *string `json:"name,omitempty" tf:"name,omitempty"`

	// Is this the Primary IP Configuration? Possible values are true and false. Defaults to false.
	Primary *bool `json:"primary,omitempty" tf:"primary,omitempty"`

	// A public_ip_address block as defined below.
	PublicIPAddress []IPConfigurationPublicIPAddressObservation `json:"publicIpAddress,omitempty" tf:"public_ip_address,omitempty"`

	// The ID of the Subnet which this IP Configuration should be connected to.
	SubnetID *string `json:"subnetId,omitempty" tf:"subnet_id,omitempty"`

	// Specifies the version of the image used to create the virtual machines.
	Version *string `json:"version,omitempty" tf:"version,omitempty"`
}

func (*NetworkInterfaceIPConfigurationObservation) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NetworkInterfaceIPConfigurationObservation.

func (*NetworkInterfaceIPConfigurationObservation) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type NetworkInterfaceIPConfigurationParameters

type NetworkInterfaceIPConfigurationParameters struct {

	// A list of Backend Address Pools IDs from a Application Gateway which this Virtual Machine Scale Set should be connected to.
	// +kubebuilder:validation:Optional
	// +listType=set
	ApplicationGatewayBackendAddressPoolIds []*string `json:"applicationGatewayBackendAddressPoolIds,omitempty" tf:"application_gateway_backend_address_pool_ids,omitempty"`

	// A list of Application Security Group IDs which this Virtual Machine Scale Set should be connected to.
	// +kubebuilder:validation:Optional
	// +listType=set
	ApplicationSecurityGroupIds []*string `json:"applicationSecurityGroupIds,omitempty" tf:"application_security_group_ids,omitempty"`

	// A list of Backend Address Pools IDs from a Load Balancer which this Virtual Machine Scale Set should be connected to.
	// +kubebuilder:validation:Optional
	// +listType=set
	LoadBalancerBackendAddressPoolIds []*string `json:"loadBalancerBackendAddressPoolIds,omitempty" tf:"load_balancer_backend_address_pool_ids,omitempty"`

	// The Name of the Public IP Address Configuration.
	// +kubebuilder:validation:Optional
	Name *string `json:"name" tf:"name,omitempty"`

	// Is this the Primary IP Configuration? Possible values are true and false. Defaults to false.
	// +kubebuilder:validation:Optional
	Primary *bool `json:"primary,omitempty" tf:"primary,omitempty"`

	// A public_ip_address block as defined below.
	// +kubebuilder:validation:Optional
	PublicIPAddress []IPConfigurationPublicIPAddressParameters `json:"publicIpAddress,omitempty" tf:"public_ip_address,omitempty"`

	// The ID of the Subnet which this IP Configuration should be connected to.
	// +crossplane:generate:reference:type=github.com/upbound/provider-azure/apis/network/v1beta1.Subnet
	// +crossplane:generate:reference:extractor=github.com/upbound/provider-azure/apis/rconfig.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:"-"`

	// Specifies the version of the image used to create the virtual machines.
	// +kubebuilder:validation:Optional
	Version *string `json:"version,omitempty" tf:"version,omitempty"`
}

func (*NetworkInterfaceIPConfigurationParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NetworkInterfaceIPConfigurationParameters.

func (*NetworkInterfaceIPConfigurationParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type NetworkInterfaceIPConfigurationPublicIPAddressInitParameters added in v0.35.0

type NetworkInterfaceIPConfigurationPublicIPAddressInitParameters struct {

	// The Prefix which should be used for the Domain Name Label for each Virtual Machine Instance. Azure concatenates the Domain Name Label and Virtual Machine Index to create a unique Domain Name Label for each Virtual Machine.
	DomainNameLabel *string `json:"domainNameLabel,omitempty" tf:"domain_name_label,omitempty"`

	// One or more ip_tag blocks as defined above. Changing this forces a new resource to be created.
	IPTag []IPConfigurationPublicIPAddressIPTagInitParameters `json:"ipTag,omitempty" tf:"ip_tag,omitempty"`

	// The Idle Timeout in Minutes for the Public IP Address. Possible values are in the range 4 to 32.
	IdleTimeoutInMinutes *float64 `json:"idleTimeoutInMinutes,omitempty" tf:"idle_timeout_in_minutes,omitempty"`

	// The Name of the Public IP Address Configuration.
	Name *string `json:"name,omitempty" tf:"name,omitempty"`

	// The ID of the Public IP Address Prefix from where Public IP Addresses should be allocated. Changing this forces a new resource to be created.
	PublicIPPrefixID *string `json:"publicIpPrefixId,omitempty" tf:"public_ip_prefix_id,omitempty"`

	// Specifies the version of the image used to create the virtual machines.
	Version *string `json:"version,omitempty" tf:"version,omitempty"`
}

func (*NetworkInterfaceIPConfigurationPublicIPAddressInitParameters) DeepCopy added in v0.35.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NetworkInterfaceIPConfigurationPublicIPAddressInitParameters.

func (*NetworkInterfaceIPConfigurationPublicIPAddressInitParameters) DeepCopyInto added in v0.35.0

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type NetworkInterfaceIPConfigurationPublicIPAddressObservation

type NetworkInterfaceIPConfigurationPublicIPAddressObservation struct {

	// The Prefix which should be used for the Domain Name Label for each Virtual Machine Instance. Azure concatenates the Domain Name Label and Virtual Machine Index to create a unique Domain Name Label for each Virtual Machine.
	DomainNameLabel *string `json:"domainNameLabel,omitempty" tf:"domain_name_label,omitempty"`

	// One or more ip_tag blocks as defined above. Changing this forces a new resource to be created.
	IPTag []IPConfigurationPublicIPAddressIPTagObservation `json:"ipTag,omitempty" tf:"ip_tag,omitempty"`

	// The Idle Timeout in Minutes for the Public IP Address. Possible values are in the range 4 to 32.
	IdleTimeoutInMinutes *float64 `json:"idleTimeoutInMinutes,omitempty" tf:"idle_timeout_in_minutes,omitempty"`

	// The Name of the Public IP Address Configuration.
	Name *string `json:"name,omitempty" tf:"name,omitempty"`

	// The ID of the Public IP Address Prefix from where Public IP Addresses should be allocated. Changing this forces a new resource to be created.
	PublicIPPrefixID *string `json:"publicIpPrefixId,omitempty" tf:"public_ip_prefix_id,omitempty"`

	// Specifies the version of the image used to create the virtual machines.
	Version *string `json:"version,omitempty" tf:"version,omitempty"`
}

func (*NetworkInterfaceIPConfigurationPublicIPAddressObservation) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NetworkInterfaceIPConfigurationPublicIPAddressObservation.

func (*NetworkInterfaceIPConfigurationPublicIPAddressObservation) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type NetworkInterfaceIPConfigurationPublicIPAddressParameters

type NetworkInterfaceIPConfigurationPublicIPAddressParameters struct {

	// The Prefix which should be used for the Domain Name Label for each Virtual Machine Instance. Azure concatenates the Domain Name Label and Virtual Machine Index to create a unique Domain Name Label for each Virtual Machine.
	// +kubebuilder:validation:Optional
	DomainNameLabel *string `json:"domainNameLabel,omitempty" tf:"domain_name_label,omitempty"`

	// One or more ip_tag blocks as defined above. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	IPTag []IPConfigurationPublicIPAddressIPTagParameters `json:"ipTag,omitempty" tf:"ip_tag,omitempty"`

	// The Idle Timeout in Minutes for the Public IP Address. Possible values are in the range 4 to 32.
	// +kubebuilder:validation:Optional
	IdleTimeoutInMinutes *float64 `json:"idleTimeoutInMinutes,omitempty" tf:"idle_timeout_in_minutes,omitempty"`

	// The Name of the Public IP Address Configuration.
	// +kubebuilder:validation:Optional
	Name *string `json:"name" tf:"name,omitempty"`

	// The ID of the Public IP Address Prefix from where Public IP Addresses should be allocated. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	PublicIPPrefixID *string `json:"publicIpPrefixId,omitempty" tf:"public_ip_prefix_id,omitempty"`

	// Specifies the version of the image used to create the virtual machines.
	// +kubebuilder:validation:Optional
	Version *string `json:"version,omitempty" tf:"version,omitempty"`
}

func (*NetworkInterfaceIPConfigurationPublicIPAddressParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NetworkInterfaceIPConfigurationPublicIPAddressParameters.

func (*NetworkInterfaceIPConfigurationPublicIPAddressParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type NetworkInterfaceInitParameters added in v0.35.0

type NetworkInterfaceInitParameters struct {

	// A list of IP Addresses of DNS Servers which should be assigned to the Network Interface.
	DNSServers []*string `json:"dnsServers,omitempty" tf:"dns_servers,omitempty"`

	// Does this Network Interface support Accelerated Networking? Defaults to false.
	EnableAcceleratedNetworking *bool `json:"enableAcceleratedNetworking,omitempty" tf:"enable_accelerated_networking,omitempty"`

	// Does this Network Interface support IP Forwarding? Defaults to false.
	EnableIPForwarding *bool `json:"enableIpForwarding,omitempty" tf:"enable_ip_forwarding,omitempty"`

	// One or more ip_configuration blocks as defined above.
	IPConfiguration []IPConfigurationInitParameters `json:"ipConfiguration,omitempty" tf:"ip_configuration,omitempty"`

	// The Name which should be used for this Network Interface. Changing this forces a new resource to be created.
	Name *string `json:"name,omitempty" tf:"name,omitempty"`

	// The ID of a Network Security Group which should be assigned to this Network Interface.
	NetworkSecurityGroupID *string `json:"networkSecurityGroupId,omitempty" tf:"network_security_group_id,omitempty"`

	// Is this the Primary IP Configuration?
	Primary *bool `json:"primary,omitempty" tf:"primary,omitempty"`
}

func (*NetworkInterfaceInitParameters) DeepCopy added in v0.35.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NetworkInterfaceInitParameters.

func (*NetworkInterfaceInitParameters) DeepCopyInto added in v0.35.0

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type NetworkInterfaceObservation

type NetworkInterfaceObservation struct {

	// A list of IP Addresses of DNS Servers which should be assigned to the Network Interface.
	DNSServers []*string `json:"dnsServers,omitempty" tf:"dns_servers,omitempty"`

	// Does this Network Interface support Accelerated Networking? Defaults to false.
	EnableAcceleratedNetworking *bool `json:"enableAcceleratedNetworking,omitempty" tf:"enable_accelerated_networking,omitempty"`

	// Does this Network Interface support IP Forwarding? Defaults to false.
	EnableIPForwarding *bool `json:"enableIpForwarding,omitempty" tf:"enable_ip_forwarding,omitempty"`

	// One or more ip_configuration blocks as defined above.
	IPConfiguration []IPConfigurationObservation `json:"ipConfiguration,omitempty" tf:"ip_configuration,omitempty"`

	// The Name which should be used for this Network Interface. Changing this forces a new resource to be created.
	Name *string `json:"name,omitempty" tf:"name,omitempty"`

	// The ID of a Network Security Group which should be assigned to this Network Interface.
	NetworkSecurityGroupID *string `json:"networkSecurityGroupId,omitempty" tf:"network_security_group_id,omitempty"`

	// Is this the Primary IP Configuration?
	Primary *bool `json:"primary,omitempty" tf:"primary,omitempty"`
}

func (*NetworkInterfaceObservation) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NetworkInterfaceObservation.

func (*NetworkInterfaceObservation) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type NetworkInterfaceParameters

type NetworkInterfaceParameters struct {

	// A list of IP Addresses of DNS Servers which should be assigned to the Network Interface.
	// +kubebuilder:validation:Optional
	DNSServers []*string `json:"dnsServers,omitempty" tf:"dns_servers,omitempty"`

	// Does this Network Interface support Accelerated Networking? Defaults to false.
	// +kubebuilder:validation:Optional
	EnableAcceleratedNetworking *bool `json:"enableAcceleratedNetworking,omitempty" tf:"enable_accelerated_networking,omitempty"`

	// Does this Network Interface support IP Forwarding? Defaults to false.
	// +kubebuilder:validation:Optional
	EnableIPForwarding *bool `json:"enableIpForwarding,omitempty" tf:"enable_ip_forwarding,omitempty"`

	// One or more ip_configuration blocks as defined above.
	// +kubebuilder:validation:Optional
	IPConfiguration []IPConfigurationParameters `json:"ipConfiguration" tf:"ip_configuration,omitempty"`

	// The Name which should be used for this Network Interface. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	Name *string `json:"name" tf:"name,omitempty"`

	// The ID of a Network Security Group which should be assigned to this Network Interface.
	// +kubebuilder:validation:Optional
	NetworkSecurityGroupID *string `json:"networkSecurityGroupId,omitempty" tf:"network_security_group_id,omitempty"`

	// Is this the Primary IP Configuration?
	// +kubebuilder:validation:Optional
	Primary *bool `json:"primary,omitempty" tf:"primary,omitempty"`
}

func (*NetworkInterfaceParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NetworkInterfaceParameters.

func (*NetworkInterfaceParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type OrchestratedVirtualMachineScaleSet

type OrchestratedVirtualMachineScaleSet 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.platformFaultDomainCount) || (has(self.initProvider) && has(self.initProvider.platformFaultDomainCount))",message="spec.forProvider.platformFaultDomainCount is a required parameter"
	Spec   OrchestratedVirtualMachineScaleSetSpec   `json:"spec"`
	Status OrchestratedVirtualMachineScaleSetStatus `json:"status,omitempty"`
}

OrchestratedVirtualMachineScaleSet is the Schema for the OrchestratedVirtualMachineScaleSets API. Manages an Virtual Machine Scale Set in Flexible Orchestration Mode. +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 (*OrchestratedVirtualMachineScaleSet) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OrchestratedVirtualMachineScaleSet.

func (*OrchestratedVirtualMachineScaleSet) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*OrchestratedVirtualMachineScaleSet) DeepCopyObject

func (in *OrchestratedVirtualMachineScaleSet) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

func (*OrchestratedVirtualMachineScaleSet) GetCondition

GetCondition of this OrchestratedVirtualMachineScaleSet.

func (*OrchestratedVirtualMachineScaleSet) GetConnectionDetailsMapping

func (tr *OrchestratedVirtualMachineScaleSet) GetConnectionDetailsMapping() map[string]string

GetConnectionDetailsMapping for this OrchestratedVirtualMachineScaleSet

func (*OrchestratedVirtualMachineScaleSet) GetDeletionPolicy

func (mg *OrchestratedVirtualMachineScaleSet) GetDeletionPolicy() xpv1.DeletionPolicy

GetDeletionPolicy of this OrchestratedVirtualMachineScaleSet.

func (*OrchestratedVirtualMachineScaleSet) GetID

GetID returns ID of underlying Terraform resource of this OrchestratedVirtualMachineScaleSet

func (*OrchestratedVirtualMachineScaleSet) GetInitParameters added in v0.35.0

func (tr *OrchestratedVirtualMachineScaleSet) GetInitParameters() (map[string]any, error)

GetInitParameters of this OrchestratedVirtualMachineScaleSet

func (*OrchestratedVirtualMachineScaleSet) GetManagementPolicies added in v0.35.0

func (mg *OrchestratedVirtualMachineScaleSet) GetManagementPolicies() xpv1.ManagementPolicies

GetManagementPolicies of this OrchestratedVirtualMachineScaleSet.

func (*OrchestratedVirtualMachineScaleSet) GetMergedParameters added in v0.40.0

func (tr *OrchestratedVirtualMachineScaleSet) GetMergedParameters(shouldMergeInitProvider bool) (map[string]any, error)

GetInitParameters of this OrchestratedVirtualMachineScaleSet

func (*OrchestratedVirtualMachineScaleSet) GetObservation

func (tr *OrchestratedVirtualMachineScaleSet) GetObservation() (map[string]any, error)

GetObservation of this OrchestratedVirtualMachineScaleSet

func (*OrchestratedVirtualMachineScaleSet) GetParameters

func (tr *OrchestratedVirtualMachineScaleSet) GetParameters() (map[string]any, error)

GetParameters of this OrchestratedVirtualMachineScaleSet

func (*OrchestratedVirtualMachineScaleSet) GetProviderConfigReference

func (mg *OrchestratedVirtualMachineScaleSet) GetProviderConfigReference() *xpv1.Reference

GetProviderConfigReference of this OrchestratedVirtualMachineScaleSet.

func (*OrchestratedVirtualMachineScaleSet) GetPublishConnectionDetailsTo

func (mg *OrchestratedVirtualMachineScaleSet) GetPublishConnectionDetailsTo() *xpv1.PublishConnectionDetailsTo

GetPublishConnectionDetailsTo of this OrchestratedVirtualMachineScaleSet.

func (*OrchestratedVirtualMachineScaleSet) GetTerraformResourceType

func (mg *OrchestratedVirtualMachineScaleSet) GetTerraformResourceType() string

GetTerraformResourceType returns Terraform resource type for this OrchestratedVirtualMachineScaleSet

func (*OrchestratedVirtualMachineScaleSet) GetTerraformSchemaVersion

func (tr *OrchestratedVirtualMachineScaleSet) GetTerraformSchemaVersion() int

GetTerraformSchemaVersion returns the associated Terraform schema version

func (*OrchestratedVirtualMachineScaleSet) GetWriteConnectionSecretToReference

func (mg *OrchestratedVirtualMachineScaleSet) GetWriteConnectionSecretToReference() *xpv1.SecretReference

GetWriteConnectionSecretToReference of this OrchestratedVirtualMachineScaleSet.

func (*OrchestratedVirtualMachineScaleSet) Hub added in v0.42.1

Hub marks this type as a conversion hub.

func (*OrchestratedVirtualMachineScaleSet) LateInitialize

func (tr *OrchestratedVirtualMachineScaleSet) LateInitialize(attrs []byte) (bool, error)

LateInitialize this OrchestratedVirtualMachineScaleSet using its observed tfState. returns True if there are any spec changes for the resource.

func (*OrchestratedVirtualMachineScaleSet) ResolveReferences

func (mg *OrchestratedVirtualMachineScaleSet) ResolveReferences(ctx context.Context, c client.Reader) error

ResolveReferences of this OrchestratedVirtualMachineScaleSet.

func (*OrchestratedVirtualMachineScaleSet) SetConditions

func (mg *OrchestratedVirtualMachineScaleSet) SetConditions(c ...xpv1.Condition)

SetConditions of this OrchestratedVirtualMachineScaleSet.

func (*OrchestratedVirtualMachineScaleSet) SetDeletionPolicy

func (mg *OrchestratedVirtualMachineScaleSet) SetDeletionPolicy(r xpv1.DeletionPolicy)

SetDeletionPolicy of this OrchestratedVirtualMachineScaleSet.

func (*OrchestratedVirtualMachineScaleSet) SetManagementPolicies added in v0.35.0

func (mg *OrchestratedVirtualMachineScaleSet) SetManagementPolicies(r xpv1.ManagementPolicies)

SetManagementPolicies of this OrchestratedVirtualMachineScaleSet.

func (*OrchestratedVirtualMachineScaleSet) SetObservation

func (tr *OrchestratedVirtualMachineScaleSet) SetObservation(obs map[string]any) error

SetObservation for this OrchestratedVirtualMachineScaleSet

func (*OrchestratedVirtualMachineScaleSet) SetParameters

func (tr *OrchestratedVirtualMachineScaleSet) SetParameters(params map[string]any) error

SetParameters for this OrchestratedVirtualMachineScaleSet

func (*OrchestratedVirtualMachineScaleSet) SetProviderConfigReference

func (mg *OrchestratedVirtualMachineScaleSet) SetProviderConfigReference(r *xpv1.Reference)

SetProviderConfigReference of this OrchestratedVirtualMachineScaleSet.

func (*OrchestratedVirtualMachineScaleSet) SetPublishConnectionDetailsTo

func (mg *OrchestratedVirtualMachineScaleSet) SetPublishConnectionDetailsTo(r *xpv1.PublishConnectionDetailsTo)

SetPublishConnectionDetailsTo of this OrchestratedVirtualMachineScaleSet.

func (*OrchestratedVirtualMachineScaleSet) SetWriteConnectionSecretToReference

func (mg *OrchestratedVirtualMachineScaleSet) SetWriteConnectionSecretToReference(r *xpv1.SecretReference)

SetWriteConnectionSecretToReference of this OrchestratedVirtualMachineScaleSet.

type OrchestratedVirtualMachineScaleSetAdditionalCapabilitiesInitParameters added in v0.35.0

type OrchestratedVirtualMachineScaleSetAdditionalCapabilitiesInitParameters struct {

	// Should the capacity to enable Data Disks of the UltraSSD_LRS storage account type be supported on this Virtual Machine Scale Set? Defaults to false. Changing this forces a new resource to be created.
	UltraSsdEnabled *bool `json:"ultraSsdEnabled,omitempty" tf:"ultra_ssd_enabled,omitempty"`
}

func (*OrchestratedVirtualMachineScaleSetAdditionalCapabilitiesInitParameters) DeepCopy added in v0.35.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OrchestratedVirtualMachineScaleSetAdditionalCapabilitiesInitParameters.

func (*OrchestratedVirtualMachineScaleSetAdditionalCapabilitiesInitParameters) DeepCopyInto added in v0.35.0

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type OrchestratedVirtualMachineScaleSetAdditionalCapabilitiesObservation added in v0.26.0

type OrchestratedVirtualMachineScaleSetAdditionalCapabilitiesObservation struct {

	// Should the capacity to enable Data Disks of the UltraSSD_LRS storage account type be supported on this Virtual Machine Scale Set? Defaults to false. Changing this forces a new resource to be created.
	UltraSsdEnabled *bool `json:"ultraSsdEnabled,omitempty" tf:"ultra_ssd_enabled,omitempty"`
}

func (*OrchestratedVirtualMachineScaleSetAdditionalCapabilitiesObservation) DeepCopy added in v0.26.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OrchestratedVirtualMachineScaleSetAdditionalCapabilitiesObservation.

func (*OrchestratedVirtualMachineScaleSetAdditionalCapabilitiesObservation) DeepCopyInto added in v0.26.0

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type OrchestratedVirtualMachineScaleSetAdditionalCapabilitiesParameters added in v0.26.0

type OrchestratedVirtualMachineScaleSetAdditionalCapabilitiesParameters struct {

	// Should the capacity to enable Data Disks of the UltraSSD_LRS storage account type be supported on this Virtual Machine Scale Set? Defaults to false. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	UltraSsdEnabled *bool `json:"ultraSsdEnabled,omitempty" tf:"ultra_ssd_enabled,omitempty"`
}

func (*OrchestratedVirtualMachineScaleSetAdditionalCapabilitiesParameters) DeepCopy added in v0.26.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OrchestratedVirtualMachineScaleSetAdditionalCapabilitiesParameters.

func (*OrchestratedVirtualMachineScaleSetAdditionalCapabilitiesParameters) DeepCopyInto added in v0.26.0

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type OrchestratedVirtualMachineScaleSetAutomaticInstanceRepairInitParameters added in v0.35.0

type OrchestratedVirtualMachineScaleSetAutomaticInstanceRepairInitParameters struct {

	// Should the automatic instance repair be enabled on this Virtual Machine Scale Set? Possible values are true and false.
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// Amount of time for which automatic repairs will be delayed. The grace period starts right after the VM is found unhealthy. Possible values are between 30 and 90 minutes. The time duration should be specified in ISO 8601 format (e.g. PT30M to PT90M). Defaults to PT30M.
	GracePeriod *string `json:"gracePeriod,omitempty" tf:"grace_period,omitempty"`
}

func (*OrchestratedVirtualMachineScaleSetAutomaticInstanceRepairInitParameters) DeepCopy added in v0.35.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OrchestratedVirtualMachineScaleSetAutomaticInstanceRepairInitParameters.

func (*OrchestratedVirtualMachineScaleSetAutomaticInstanceRepairInitParameters) DeepCopyInto added in v0.35.0

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type OrchestratedVirtualMachineScaleSetAutomaticInstanceRepairObservation

type OrchestratedVirtualMachineScaleSetAutomaticInstanceRepairObservation struct {

	// Should the automatic instance repair be enabled on this Virtual Machine Scale Set? Possible values are true and false.
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// Amount of time for which automatic repairs will be delayed. The grace period starts right after the VM is found unhealthy. Possible values are between 30 and 90 minutes. The time duration should be specified in ISO 8601 format (e.g. PT30M to PT90M). Defaults to PT30M.
	GracePeriod *string `json:"gracePeriod,omitempty" tf:"grace_period,omitempty"`
}

func (*OrchestratedVirtualMachineScaleSetAutomaticInstanceRepairObservation) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OrchestratedVirtualMachineScaleSetAutomaticInstanceRepairObservation.

func (*OrchestratedVirtualMachineScaleSetAutomaticInstanceRepairObservation) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type OrchestratedVirtualMachineScaleSetAutomaticInstanceRepairParameters

type OrchestratedVirtualMachineScaleSetAutomaticInstanceRepairParameters struct {

	// Should the automatic instance repair be enabled on this Virtual Machine Scale Set? Possible values are true and false.
	// +kubebuilder:validation:Optional
	Enabled *bool `json:"enabled" tf:"enabled,omitempty"`

	// Amount of time for which automatic repairs will be delayed. The grace period starts right after the VM is found unhealthy. Possible values are between 30 and 90 minutes. The time duration should be specified in ISO 8601 format (e.g. PT30M to PT90M). Defaults to PT30M.
	// +kubebuilder:validation:Optional
	GracePeriod *string `json:"gracePeriod,omitempty" tf:"grace_period,omitempty"`
}

func (*OrchestratedVirtualMachineScaleSetAutomaticInstanceRepairParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OrchestratedVirtualMachineScaleSetAutomaticInstanceRepairParameters.

func (*OrchestratedVirtualMachineScaleSetAutomaticInstanceRepairParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type OrchestratedVirtualMachineScaleSetBootDiagnosticsInitParameters added in v0.35.0

type OrchestratedVirtualMachineScaleSetBootDiagnosticsInitParameters struct {

	// The Primary/Secondary Endpoint for the Azure Storage Account which should be used to store Boot Diagnostics, including Console Output and Screenshots from the Hypervisor. By including a boot_diagnostics block without passing the storage_account_uri field will cause the API to utilize a Managed Storage Account to store the Boot Diagnostics output.
	StorageAccountURI *string `json:"storageAccountUri,omitempty" tf:"storage_account_uri,omitempty"`
}

func (*OrchestratedVirtualMachineScaleSetBootDiagnosticsInitParameters) DeepCopy added in v0.35.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OrchestratedVirtualMachineScaleSetBootDiagnosticsInitParameters.

func (*OrchestratedVirtualMachineScaleSetBootDiagnosticsInitParameters) DeepCopyInto added in v0.35.0

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type OrchestratedVirtualMachineScaleSetBootDiagnosticsObservation

type OrchestratedVirtualMachineScaleSetBootDiagnosticsObservation struct {

	// The Primary/Secondary Endpoint for the Azure Storage Account which should be used to store Boot Diagnostics, including Console Output and Screenshots from the Hypervisor. By including a boot_diagnostics block without passing the storage_account_uri field will cause the API to utilize a Managed Storage Account to store the Boot Diagnostics output.
	StorageAccountURI *string `json:"storageAccountUri,omitempty" tf:"storage_account_uri,omitempty"`
}

func (*OrchestratedVirtualMachineScaleSetBootDiagnosticsObservation) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OrchestratedVirtualMachineScaleSetBootDiagnosticsObservation.

func (*OrchestratedVirtualMachineScaleSetBootDiagnosticsObservation) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type OrchestratedVirtualMachineScaleSetBootDiagnosticsParameters

type OrchestratedVirtualMachineScaleSetBootDiagnosticsParameters struct {

	// The Primary/Secondary Endpoint for the Azure Storage Account which should be used to store Boot Diagnostics, including Console Output and Screenshots from the Hypervisor. By including a boot_diagnostics block without passing the storage_account_uri field will cause the API to utilize a Managed Storage Account to store the Boot Diagnostics output.
	// +kubebuilder:validation:Optional
	StorageAccountURI *string `json:"storageAccountUri,omitempty" tf:"storage_account_uri,omitempty"`
}

func (*OrchestratedVirtualMachineScaleSetBootDiagnosticsParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OrchestratedVirtualMachineScaleSetBootDiagnosticsParameters.

func (*OrchestratedVirtualMachineScaleSetBootDiagnosticsParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type OrchestratedVirtualMachineScaleSetDataDiskInitParameters added in v0.35.0

type OrchestratedVirtualMachineScaleSetDataDiskInitParameters struct {

	// The type of Caching which should be used for this Data Disk. Possible values are None, ReadOnly and ReadWrite.
	Caching *string `json:"caching,omitempty" tf:"caching,omitempty"`

	// The create option which should be used for this Data Disk. Possible values are Empty and FromImage. Defaults to Empty. (FromImage should only be used if the source image includes data disks).
	CreateOption *string `json:"createOption,omitempty" tf:"create_option,omitempty"`

	// The ID of the Disk Encryption Set which should be used to encrypt the Data Disk. Changing this forces a new resource to be created.
	DiskEncryptionSetID *string `json:"diskEncryptionSetId,omitempty" tf:"disk_encryption_set_id,omitempty"`

	// The size of the Data Disk which should be created. Required if create_option is specified as Empty.
	DiskSizeGb *float64 `json:"diskSizeGb,omitempty" tf:"disk_size_gb,omitempty"`

	// The Logical Unit Number of the Data Disk, which must be unique within the Virtual Machine. Required if create_option is specified as Empty.
	Lun *float64 `json:"lun,omitempty" tf:"lun,omitempty"`

	// The Type of Storage Account which should back this Data Disk. Possible values include Standard_LRS, StandardSSD_LRS, StandardSSD_ZRS, Premium_LRS, PremiumV2_LRS, Premium_ZRS and UltraSSD_LRS.
	StorageAccountType *string `json:"storageAccountType,omitempty" tf:"storage_account_type,omitempty"`

	// Specifies the Read-Write IOPS for this Data Disk. Only settable when storage_account_type is PremiumV2_LRS or UltraSSD_LRS.
	UltraSsdDiskIopsReadWrite *float64 `json:"ultraSsdDiskIopsReadWrite,omitempty" tf:"ultra_ssd_disk_iops_read_write,omitempty"`

	// Specifies the bandwidth in MB per second for this Data Disk. Only settable when storage_account_type is PremiumV2_LRS or UltraSSD_LRS.
	UltraSsdDiskMbpsReadWrite *float64 `json:"ultraSsdDiskMbpsReadWrite,omitempty" tf:"ultra_ssd_disk_mbps_read_write,omitempty"`

	// Specifies if Write Accelerator is enabled on the Data Disk. Defaults to false.
	WriteAcceleratorEnabled *bool `json:"writeAcceleratorEnabled,omitempty" tf:"write_accelerator_enabled,omitempty"`
}

func (*OrchestratedVirtualMachineScaleSetDataDiskInitParameters) DeepCopy added in v0.35.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OrchestratedVirtualMachineScaleSetDataDiskInitParameters.

func (*OrchestratedVirtualMachineScaleSetDataDiskInitParameters) DeepCopyInto added in v0.35.0

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type OrchestratedVirtualMachineScaleSetDataDiskObservation

type OrchestratedVirtualMachineScaleSetDataDiskObservation struct {

	// The type of Caching which should be used for this Data Disk. Possible values are None, ReadOnly and ReadWrite.
	Caching *string `json:"caching,omitempty" tf:"caching,omitempty"`

	// The create option which should be used for this Data Disk. Possible values are Empty and FromImage. Defaults to Empty. (FromImage should only be used if the source image includes data disks).
	CreateOption *string `json:"createOption,omitempty" tf:"create_option,omitempty"`

	// The ID of the Disk Encryption Set which should be used to encrypt the Data Disk. Changing this forces a new resource to be created.
	DiskEncryptionSetID *string `json:"diskEncryptionSetId,omitempty" tf:"disk_encryption_set_id,omitempty"`

	// The size of the Data Disk which should be created. Required if create_option is specified as Empty.
	DiskSizeGb *float64 `json:"diskSizeGb,omitempty" tf:"disk_size_gb,omitempty"`

	// The Logical Unit Number of the Data Disk, which must be unique within the Virtual Machine. Required if create_option is specified as Empty.
	Lun *float64 `json:"lun,omitempty" tf:"lun,omitempty"`

	// The Type of Storage Account which should back this Data Disk. Possible values include Standard_LRS, StandardSSD_LRS, StandardSSD_ZRS, Premium_LRS, PremiumV2_LRS, Premium_ZRS and UltraSSD_LRS.
	StorageAccountType *string `json:"storageAccountType,omitempty" tf:"storage_account_type,omitempty"`

	// Specifies the Read-Write IOPS for this Data Disk. Only settable when storage_account_type is PremiumV2_LRS or UltraSSD_LRS.
	UltraSsdDiskIopsReadWrite *float64 `json:"ultraSsdDiskIopsReadWrite,omitempty" tf:"ultra_ssd_disk_iops_read_write,omitempty"`

	// Specifies the bandwidth in MB per second for this Data Disk. Only settable when storage_account_type is PremiumV2_LRS or UltraSSD_LRS.
	UltraSsdDiskMbpsReadWrite *float64 `json:"ultraSsdDiskMbpsReadWrite,omitempty" tf:"ultra_ssd_disk_mbps_read_write,omitempty"`

	// Specifies if Write Accelerator is enabled on the Data Disk. Defaults to false.
	WriteAcceleratorEnabled *bool `json:"writeAcceleratorEnabled,omitempty" tf:"write_accelerator_enabled,omitempty"`
}

func (*OrchestratedVirtualMachineScaleSetDataDiskObservation) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OrchestratedVirtualMachineScaleSetDataDiskObservation.

func (*OrchestratedVirtualMachineScaleSetDataDiskObservation) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type OrchestratedVirtualMachineScaleSetDataDiskParameters

type OrchestratedVirtualMachineScaleSetDataDiskParameters struct {

	// The type of Caching which should be used for this Data Disk. Possible values are None, ReadOnly and ReadWrite.
	// +kubebuilder:validation:Optional
	Caching *string `json:"caching" tf:"caching,omitempty"`

	// The create option which should be used for this Data Disk. Possible values are Empty and FromImage. Defaults to Empty. (FromImage should only be used if the source image includes data disks).
	// +kubebuilder:validation:Optional
	CreateOption *string `json:"createOption,omitempty" tf:"create_option,omitempty"`

	// The ID of the Disk Encryption Set which should be used to encrypt the Data Disk. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	DiskEncryptionSetID *string `json:"diskEncryptionSetId,omitempty" tf:"disk_encryption_set_id,omitempty"`

	// The size of the Data Disk which should be created. Required if create_option is specified as Empty.
	// +kubebuilder:validation:Optional
	DiskSizeGb *float64 `json:"diskSizeGb,omitempty" tf:"disk_size_gb,omitempty"`

	// The Logical Unit Number of the Data Disk, which must be unique within the Virtual Machine. Required if create_option is specified as Empty.
	// +kubebuilder:validation:Optional
	Lun *float64 `json:"lun,omitempty" tf:"lun,omitempty"`

	// The Type of Storage Account which should back this Data Disk. Possible values include Standard_LRS, StandardSSD_LRS, StandardSSD_ZRS, Premium_LRS, PremiumV2_LRS, Premium_ZRS and UltraSSD_LRS.
	// +kubebuilder:validation:Optional
	StorageAccountType *string `json:"storageAccountType" tf:"storage_account_type,omitempty"`

	// Specifies the Read-Write IOPS for this Data Disk. Only settable when storage_account_type is PremiumV2_LRS or UltraSSD_LRS.
	// +kubebuilder:validation:Optional
	UltraSsdDiskIopsReadWrite *float64 `json:"ultraSsdDiskIopsReadWrite,omitempty" tf:"ultra_ssd_disk_iops_read_write,omitempty"`

	// Specifies the bandwidth in MB per second for this Data Disk. Only settable when storage_account_type is PremiumV2_LRS or UltraSSD_LRS.
	// +kubebuilder:validation:Optional
	UltraSsdDiskMbpsReadWrite *float64 `json:"ultraSsdDiskMbpsReadWrite,omitempty" tf:"ultra_ssd_disk_mbps_read_write,omitempty"`

	// Specifies if Write Accelerator is enabled on the Data Disk. Defaults to false.
	// +kubebuilder:validation:Optional
	WriteAcceleratorEnabled *bool `json:"writeAcceleratorEnabled,omitempty" tf:"write_accelerator_enabled,omitempty"`
}

func (*OrchestratedVirtualMachineScaleSetDataDiskParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OrchestratedVirtualMachineScaleSetDataDiskParameters.

func (*OrchestratedVirtualMachineScaleSetDataDiskParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type OrchestratedVirtualMachineScaleSetExtensionInitParameters added in v0.35.0

type OrchestratedVirtualMachineScaleSetExtensionInitParameters struct {

	// Should the latest version of the Extension be used at Deployment Time, if one is available? This won't auto-update the extension on existing installation. Defaults to true.
	AutoUpgradeMinorVersionEnabled *bool `json:"autoUpgradeMinorVersionEnabled,omitempty" tf:"auto_upgrade_minor_version_enabled,omitempty"`

	// An ordered list of Extension names which Virtual Machine Scale Set should provision after VM creation.
	ExtensionsToProvisionAfterVMCreation []*string `json:"extensionsToProvisionAfterVmCreation,omitempty" tf:"extensions_to_provision_after_vm_creation,omitempty"`

	// Should failures from the extension be suppressed? Possible values are true or false.
	FailureSuppressionEnabled *bool `json:"failureSuppressionEnabled,omitempty" tf:"failure_suppression_enabled,omitempty"`

	// A value which, when different to the previous value can be used to force-run the Extension even if the Extension Configuration hasn't changed.
	ForceExtensionExecutionOnChange *string `json:"forceExtensionExecutionOnChange,omitempty" tf:"force_extension_execution_on_change,omitempty"`

	// The name for the Virtual Machine Scale Set Extension.
	Name *string `json:"name,omitempty" tf:"name,omitempty"`

	// A protected_settings_from_key_vault block as defined below.
	ProtectedSettingsFromKeyVault []ExtensionProtectedSettingsFromKeyVaultInitParameters `json:"protectedSettingsFromKeyVault,omitempty" tf:"protected_settings_from_key_vault,omitempty"`

	// Specifies the Publisher of the Extension.
	Publisher *string `json:"publisher,omitempty" tf:"publisher,omitempty"`

	// A JSON String which specifies Settings for the Extension.
	Settings *string `json:"settings,omitempty" tf:"settings,omitempty"`

	// Specifies the Type of the Extension.
	Type *string `json:"type,omitempty" tf:"type,omitempty"`

	// Specifies the version of the extension to use, available versions can be found using the Azure CLI.
	TypeHandlerVersion *string `json:"typeHandlerVersion,omitempty" tf:"type_handler_version,omitempty"`
}

func (*OrchestratedVirtualMachineScaleSetExtensionInitParameters) DeepCopy added in v0.35.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OrchestratedVirtualMachineScaleSetExtensionInitParameters.

func (*OrchestratedVirtualMachineScaleSetExtensionInitParameters) DeepCopyInto added in v0.35.0

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type OrchestratedVirtualMachineScaleSetExtensionObservation

type OrchestratedVirtualMachineScaleSetExtensionObservation struct {

	// Should the latest version of the Extension be used at Deployment Time, if one is available? This won't auto-update the extension on existing installation. Defaults to true.
	AutoUpgradeMinorVersionEnabled *bool `json:"autoUpgradeMinorVersionEnabled,omitempty" tf:"auto_upgrade_minor_version_enabled,omitempty"`

	// An ordered list of Extension names which Virtual Machine Scale Set should provision after VM creation.
	ExtensionsToProvisionAfterVMCreation []*string `json:"extensionsToProvisionAfterVmCreation,omitempty" tf:"extensions_to_provision_after_vm_creation,omitempty"`

	// Should failures from the extension be suppressed? Possible values are true or false.
	FailureSuppressionEnabled *bool `json:"failureSuppressionEnabled,omitempty" tf:"failure_suppression_enabled,omitempty"`

	// A value which, when different to the previous value can be used to force-run the Extension even if the Extension Configuration hasn't changed.
	ForceExtensionExecutionOnChange *string `json:"forceExtensionExecutionOnChange,omitempty" tf:"force_extension_execution_on_change,omitempty"`

	// The name for the Virtual Machine Scale Set Extension.
	Name *string `json:"name,omitempty" tf:"name,omitempty"`

	// A protected_settings_from_key_vault block as defined below.
	ProtectedSettingsFromKeyVault []ExtensionProtectedSettingsFromKeyVaultObservation `json:"protectedSettingsFromKeyVault,omitempty" tf:"protected_settings_from_key_vault,omitempty"`

	// Specifies the Publisher of the Extension.
	Publisher *string `json:"publisher,omitempty" tf:"publisher,omitempty"`

	// A JSON String which specifies Settings for the Extension.
	Settings *string `json:"settings,omitempty" tf:"settings,omitempty"`

	// Specifies the Type of the Extension.
	Type *string `json:"type,omitempty" tf:"type,omitempty"`

	// Specifies the version of the extension to use, available versions can be found using the Azure CLI.
	TypeHandlerVersion *string `json:"typeHandlerVersion,omitempty" tf:"type_handler_version,omitempty"`
}

func (*OrchestratedVirtualMachineScaleSetExtensionObservation) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OrchestratedVirtualMachineScaleSetExtensionObservation.

func (*OrchestratedVirtualMachineScaleSetExtensionObservation) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type OrchestratedVirtualMachineScaleSetExtensionParameters

type OrchestratedVirtualMachineScaleSetExtensionParameters struct {

	// Should the latest version of the Extension be used at Deployment Time, if one is available? This won't auto-update the extension on existing installation. Defaults to true.
	// +kubebuilder:validation:Optional
	AutoUpgradeMinorVersionEnabled *bool `json:"autoUpgradeMinorVersionEnabled,omitempty" tf:"auto_upgrade_minor_version_enabled,omitempty"`

	// An ordered list of Extension names which Virtual Machine Scale Set should provision after VM creation.
	// +kubebuilder:validation:Optional
	ExtensionsToProvisionAfterVMCreation []*string `json:"extensionsToProvisionAfterVmCreation,omitempty" tf:"extensions_to_provision_after_vm_creation,omitempty"`

	// Should failures from the extension be suppressed? Possible values are true or false.
	// +kubebuilder:validation:Optional
	FailureSuppressionEnabled *bool `json:"failureSuppressionEnabled,omitempty" tf:"failure_suppression_enabled,omitempty"`

	// A value which, when different to the previous value can be used to force-run the Extension even if the Extension Configuration hasn't changed.
	// +kubebuilder:validation:Optional
	ForceExtensionExecutionOnChange *string `json:"forceExtensionExecutionOnChange,omitempty" tf:"force_extension_execution_on_change,omitempty"`

	// The name for the Virtual Machine Scale Set Extension.
	// +kubebuilder:validation:Optional
	Name *string `json:"name" tf:"name,omitempty"`

	// A protected_settings_from_key_vault block as defined below.
	// +kubebuilder:validation:Optional
	ProtectedSettingsFromKeyVault []ExtensionProtectedSettingsFromKeyVaultParameters `json:"protectedSettingsFromKeyVault,omitempty" tf:"protected_settings_from_key_vault,omitempty"`

	// A JSON String which specifies Sensitive Settings (such as Passwords) for the Extension.
	// +kubebuilder:validation:Optional
	ProtectedSettingsSecretRef *v1.SecretKeySelector `json:"protectedSettingsSecretRef,omitempty" tf:"-"`

	// Specifies the Publisher of the Extension.
	// +kubebuilder:validation:Optional
	Publisher *string `json:"publisher" tf:"publisher,omitempty"`

	// A JSON String which specifies Settings for the Extension.
	// +kubebuilder:validation:Optional
	Settings *string `json:"settings,omitempty" tf:"settings,omitempty"`

	// Specifies the Type of the Extension.
	// +kubebuilder:validation:Optional
	Type *string `json:"type" tf:"type,omitempty"`

	// Specifies the version of the extension to use, available versions can be found using the Azure CLI.
	// +kubebuilder:validation:Optional
	TypeHandlerVersion *string `json:"typeHandlerVersion" tf:"type_handler_version,omitempty"`
}

func (*OrchestratedVirtualMachineScaleSetExtensionParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OrchestratedVirtualMachineScaleSetExtensionParameters.

func (*OrchestratedVirtualMachineScaleSetExtensionParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type OrchestratedVirtualMachineScaleSetIdentityInitParameters added in v0.35.0

type OrchestratedVirtualMachineScaleSetIdentityInitParameters struct {

	// Specifies a list of User Managed Identity IDs to be assigned to this Windows Virtual Machine Scale Set.
	// +listType=set
	IdentityIds []*string `json:"identityIds,omitempty" tf:"identity_ids,omitempty"`

	// The type of Managed Identity that should be configured on this Windows Virtual Machine Scale Set. Only possible value is UserAssigned.
	Type *string `json:"type,omitempty" tf:"type,omitempty"`
}

func (*OrchestratedVirtualMachineScaleSetIdentityInitParameters) DeepCopy added in v0.35.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OrchestratedVirtualMachineScaleSetIdentityInitParameters.

func (*OrchestratedVirtualMachineScaleSetIdentityInitParameters) DeepCopyInto added in v0.35.0

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type OrchestratedVirtualMachineScaleSetIdentityObservation

type OrchestratedVirtualMachineScaleSetIdentityObservation struct {

	// Specifies a list of User Managed Identity IDs to be assigned to this Windows Virtual Machine Scale Set.
	// +listType=set
	IdentityIds []*string `json:"identityIds,omitempty" tf:"identity_ids,omitempty"`

	// The type of Managed Identity that should be configured on this Windows Virtual Machine Scale Set. Only possible value is UserAssigned.
	Type *string `json:"type,omitempty" tf:"type,omitempty"`
}

func (*OrchestratedVirtualMachineScaleSetIdentityObservation) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OrchestratedVirtualMachineScaleSetIdentityObservation.

func (*OrchestratedVirtualMachineScaleSetIdentityObservation) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type OrchestratedVirtualMachineScaleSetIdentityParameters

type OrchestratedVirtualMachineScaleSetIdentityParameters struct {

	// Specifies a list of User Managed Identity IDs to be assigned to this Windows Virtual Machine Scale Set.
	// +kubebuilder:validation:Optional
	// +listType=set
	IdentityIds []*string `json:"identityIds" tf:"identity_ids,omitempty"`

	// The type of Managed Identity that should be configured on this Windows Virtual Machine Scale Set. Only possible value is UserAssigned.
	// +kubebuilder:validation:Optional
	Type *string `json:"type" tf:"type,omitempty"`
}

func (*OrchestratedVirtualMachineScaleSetIdentityParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OrchestratedVirtualMachineScaleSetIdentityParameters.

func (*OrchestratedVirtualMachineScaleSetIdentityParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type OrchestratedVirtualMachineScaleSetInitParameters added in v0.35.0

type OrchestratedVirtualMachineScaleSetInitParameters struct {

	// An additional_capabilities block as defined below.
	AdditionalCapabilities []OrchestratedVirtualMachineScaleSetAdditionalCapabilitiesInitParameters `json:"additionalCapabilities,omitempty" tf:"additional_capabilities,omitempty"`

	// An automatic_instance_repair block as defined below.
	AutomaticInstanceRepair []OrchestratedVirtualMachineScaleSetAutomaticInstanceRepairInitParameters `json:"automaticInstanceRepair,omitempty" tf:"automatic_instance_repair,omitempty"`

	// A boot_diagnostics block as defined below.
	BootDiagnostics []OrchestratedVirtualMachineScaleSetBootDiagnosticsInitParameters `json:"bootDiagnostics,omitempty" tf:"boot_diagnostics,omitempty"`

	// Specifies the ID of the Capacity Reservation Group which the Virtual Machine Scale Set should be allocated to. Changing this forces a new resource to be created.
	CapacityReservationGroupID *string `json:"capacityReservationGroupId,omitempty" tf:"capacity_reservation_group_id,omitempty"`

	// One or more data_disk blocks as defined below.
	DataDisk []OrchestratedVirtualMachineScaleSetDataDiskInitParameters `json:"dataDisk,omitempty" tf:"data_disk,omitempty"`

	// Should disks attached to this Virtual Machine Scale Set be encrypted by enabling Encryption at Host?
	EncryptionAtHostEnabled *bool `json:"encryptionAtHostEnabled,omitempty" tf:"encryption_at_host_enabled,omitempty"`

	// The Policy which should be used by Spot Virtual Machines that are Evicted from the Scale Set. Possible values are Deallocate and Delete. Changing this forces a new resource to be created.
	EvictionPolicy *string `json:"evictionPolicy,omitempty" tf:"eviction_policy,omitempty"`

	// One or more extension blocks as defined below
	Extension []OrchestratedVirtualMachineScaleSetExtensionInitParameters `json:"extension,omitempty" tf:"extension,omitempty"`

	// Should extension operations be allowed on the Virtual Machine Scale Set? Possible values are true or false. Defaults to true. Changing this forces a new Virtual Machine Scale Set to be created.
	ExtensionOperationsEnabled *bool `json:"extensionOperationsEnabled,omitempty" tf:"extension_operations_enabled,omitempty"`

	// Specifies the time alloted for all extensions to start. The time duration should be between 15 minutes and 120 minutes (inclusive) and should be specified in ISO 8601 format. Defaults to PT1H30M.
	ExtensionsTimeBudget *string `json:"extensionsTimeBudget,omitempty" tf:"extensions_time_budget,omitempty"`

	// An identity block as defined below.
	Identity []OrchestratedVirtualMachineScaleSetIdentityInitParameters `json:"identity,omitempty" tf:"identity,omitempty"`

	// The number of Virtual Machines in the Virtual Machine Scale Set.
	Instances *float64 `json:"instances,omitempty" tf:"instances,omitempty"`

	// Specifies the type of on-premise license (also known as Azure Hybrid Use Benefit) which should be used for this Virtual Machine Scale Set. Possible values are None, Windows_Client and Windows_Server.
	LicenseType *string `json:"licenseType,omitempty" tf:"license_type,omitempty"`

	// The Azure location where the Virtual Machine Scale Set should exist. Changing this forces a new resource to be created.
	Location *string `json:"location,omitempty" tf:"location,omitempty"`

	// The maximum price you're willing to pay for each Virtual Machine in this Scale Set, in US Dollars; which must be greater than the current spot price. If this bid price falls below the current spot price the Virtual Machines in the Scale Set will be evicted using the eviction_policy. Defaults to -1, which means that each Virtual Machine in the Scale Set should not be evicted for price reasons.
	MaxBidPrice *float64 `json:"maxBidPrice,omitempty" tf:"max_bid_price,omitempty"`

	// One or more network_interface blocks as defined below.
	NetworkInterface []OrchestratedVirtualMachineScaleSetNetworkInterfaceInitParameters `json:"networkInterface,omitempty" tf:"network_interface,omitempty"`

	// An os_disk block as defined below.
	OsDisk []OrchestratedVirtualMachineScaleSetOsDiskInitParameters `json:"osDisk,omitempty" tf:"os_disk,omitempty"`

	// An os_profile block as defined below.
	OsProfile []OsProfileInitParameters `json:"osProfile,omitempty" tf:"os_profile,omitempty"`

	// A plan block as documented below. Changing this forces a new resource to be created.
	Plan []OrchestratedVirtualMachineScaleSetPlanInitParameters `json:"plan,omitempty" tf:"plan,omitempty"`

	// Specifies the number of fault domains that are used by this Virtual Machine Scale Set. Changing this forces a new resource to be created.
	PlatformFaultDomainCount *float64 `json:"platformFaultDomainCount,omitempty" tf:"platform_fault_domain_count,omitempty"`

	// The Priority of this Virtual Machine Scale Set. Possible values are Regular and Spot. Defaults to Regular. Changing this value forces a new resource.
	Priority *string `json:"priority,omitempty" tf:"priority,omitempty"`

	// a priority_mix block as defined below
	PriorityMix []PriorityMixInitParameters `json:"priorityMix,omitempty" tf:"priority_mix,omitempty"`

	// The ID of the Proximity Placement Group which the Virtual Machine should be assigned to. Changing this forces a new resource to be created.
	ProximityPlacementGroupID *string `json:"proximityPlacementGroupId,omitempty" tf:"proximity_placement_group_id,omitempty"`

	// Should this Virtual Machine Scale Set be limited to a Single Placement Group, which means the number of instances will be capped at 100 Virtual Machines. Possible values are true or false.
	SinglePlacementGroup *bool `json:"singlePlacementGroup,omitempty" tf:"single_placement_group,omitempty"`

	// The name of the SKU to be used by this Virtual Machine Scale Set. Valid values include: any of the General purpose, Compute optimized, Memory optimized, Storage optimized, GPU optimized, FPGA optimized, High performance, or Previous generation virtual machine SKUs.
	SkuName *string `json:"skuName,omitempty" tf:"sku_name,omitempty"`

	// The ID of an Image which each Virtual Machine in this Scale Set should be based on. Possible Image ID types include Image IDs, Shared Image IDs, Shared Image Version IDs, Community Gallery Image IDs, Community Gallery Image Version IDs, Shared Gallery Image IDs and Shared Gallery Image Version IDs.
	SourceImageID *string `json:"sourceImageId,omitempty" tf:"source_image_id,omitempty"`

	// A source_image_reference block as defined below.
	SourceImageReference []OrchestratedVirtualMachineScaleSetSourceImageReferenceInitParameters `json:"sourceImageReference,omitempty" tf:"source_image_reference,omitempty"`

	// A mapping of tags which should be assigned to this Virtual Machine Scale Set.
	// +mapType=granular
	Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"`

	// A termination_notification block as defined below.
	TerminationNotification []OrchestratedVirtualMachineScaleSetTerminationNotificationInitParameters `json:"terminationNotification,omitempty" tf:"termination_notification,omitempty"`

	// Should the Virtual Machines in this Scale Set be strictly evenly distributed across Availability Zones? Defaults to false. Changing this forces a new resource to be created.
	ZoneBalance *bool `json:"zoneBalance,omitempty" tf:"zone_balance,omitempty"`

	// Specifies a list of Availability Zones across which the Virtual Machine Scale Set will create instances. Changing this forces a new Virtual Machine Scale Set to be created.
	// +listType=set
	Zones []*string `json:"zones,omitempty" tf:"zones,omitempty"`
}

func (*OrchestratedVirtualMachineScaleSetInitParameters) DeepCopy added in v0.35.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OrchestratedVirtualMachineScaleSetInitParameters.

func (*OrchestratedVirtualMachineScaleSetInitParameters) DeepCopyInto added in v0.35.0

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type OrchestratedVirtualMachineScaleSetList

type OrchestratedVirtualMachineScaleSetList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	Items           []OrchestratedVirtualMachineScaleSet `json:"items"`
}

OrchestratedVirtualMachineScaleSetList contains a list of OrchestratedVirtualMachineScaleSets

func (*OrchestratedVirtualMachineScaleSetList) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OrchestratedVirtualMachineScaleSetList.

func (*OrchestratedVirtualMachineScaleSetList) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*OrchestratedVirtualMachineScaleSetList) DeepCopyObject

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

func (*OrchestratedVirtualMachineScaleSetList) GetItems

GetItems of this OrchestratedVirtualMachineScaleSetList.

type OrchestratedVirtualMachineScaleSetNetworkInterfaceInitParameters added in v0.35.0

type OrchestratedVirtualMachineScaleSetNetworkInterfaceInitParameters struct {

	// A list of IP Addresses of DNS Servers which should be assigned to the Network Interface.
	DNSServers []*string `json:"dnsServers,omitempty" tf:"dns_servers,omitempty"`

	// Does this Network Interface support Accelerated Networking? Possible values are true and false. Defaults to false.
	EnableAcceleratedNetworking *bool `json:"enableAcceleratedNetworking,omitempty" tf:"enable_accelerated_networking,omitempty"`

	// Does this Network Interface support IP Forwarding? Possible values are true and false. Defaults to false.
	EnableIPForwarding *bool `json:"enableIpForwarding,omitempty" tf:"enable_ip_forwarding,omitempty"`

	// One or more ip_configuration blocks as defined above.
	IPConfiguration []NetworkInterfaceIPConfigurationInitParameters `json:"ipConfiguration,omitempty" tf:"ip_configuration,omitempty"`

	// The Name which should be used for this Network Interface. Changing this forces a new resource to be created.
	Name *string `json:"name,omitempty" tf:"name,omitempty"`

	// The ID of a Network Security Group which should be assigned to this Network Interface.
	NetworkSecurityGroupID *string `json:"networkSecurityGroupId,omitempty" tf:"network_security_group_id,omitempty"`

	// Is this the Primary IP Configuration? Possible values are true and false. Defaults to false.
	Primary *bool `json:"primary,omitempty" tf:"primary,omitempty"`
}

func (*OrchestratedVirtualMachineScaleSetNetworkInterfaceInitParameters) DeepCopy added in v0.35.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OrchestratedVirtualMachineScaleSetNetworkInterfaceInitParameters.

func (*OrchestratedVirtualMachineScaleSetNetworkInterfaceInitParameters) DeepCopyInto added in v0.35.0

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type OrchestratedVirtualMachineScaleSetNetworkInterfaceObservation

type OrchestratedVirtualMachineScaleSetNetworkInterfaceObservation struct {

	// A list of IP Addresses of DNS Servers which should be assigned to the Network Interface.
	DNSServers []*string `json:"dnsServers,omitempty" tf:"dns_servers,omitempty"`

	// Does this Network Interface support Accelerated Networking? Possible values are true and false. Defaults to false.
	EnableAcceleratedNetworking *bool `json:"enableAcceleratedNetworking,omitempty" tf:"enable_accelerated_networking,omitempty"`

	// Does this Network Interface support IP Forwarding? Possible values are true and false. Defaults to false.
	EnableIPForwarding *bool `json:"enableIpForwarding,omitempty" tf:"enable_ip_forwarding,omitempty"`

	// One or more ip_configuration blocks as defined above.
	IPConfiguration []NetworkInterfaceIPConfigurationObservation `json:"ipConfiguration,omitempty" tf:"ip_configuration,omitempty"`

	// The Name which should be used for this Network Interface. Changing this forces a new resource to be created.
	Name *string `json:"name,omitempty" tf:"name,omitempty"`

	// The ID of a Network Security Group which should be assigned to this Network Interface.
	NetworkSecurityGroupID *string `json:"networkSecurityGroupId,omitempty" tf:"network_security_group_id,omitempty"`

	// Is this the Primary IP Configuration? Possible values are true and false. Defaults to false.
	Primary *bool `json:"primary,omitempty" tf:"primary,omitempty"`
}

func (*OrchestratedVirtualMachineScaleSetNetworkInterfaceObservation) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OrchestratedVirtualMachineScaleSetNetworkInterfaceObservation.

func (*OrchestratedVirtualMachineScaleSetNetworkInterfaceObservation) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type OrchestratedVirtualMachineScaleSetNetworkInterfaceParameters

type OrchestratedVirtualMachineScaleSetNetworkInterfaceParameters struct {

	// A list of IP Addresses of DNS Servers which should be assigned to the Network Interface.
	// +kubebuilder:validation:Optional
	DNSServers []*string `json:"dnsServers,omitempty" tf:"dns_servers,omitempty"`

	// Does this Network Interface support Accelerated Networking? Possible values are true and false. Defaults to false.
	// +kubebuilder:validation:Optional
	EnableAcceleratedNetworking *bool `json:"enableAcceleratedNetworking,omitempty" tf:"enable_accelerated_networking,omitempty"`

	// Does this Network Interface support IP Forwarding? Possible values are true and false. Defaults to false.
	// +kubebuilder:validation:Optional
	EnableIPForwarding *bool `json:"enableIpForwarding,omitempty" tf:"enable_ip_forwarding,omitempty"`

	// One or more ip_configuration blocks as defined above.
	// +kubebuilder:validation:Optional
	IPConfiguration []NetworkInterfaceIPConfigurationParameters `json:"ipConfiguration" tf:"ip_configuration,omitempty"`

	// The Name which should be used for this Network Interface. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	Name *string `json:"name" tf:"name,omitempty"`

	// The ID of a Network Security Group which should be assigned to this Network Interface.
	// +kubebuilder:validation:Optional
	NetworkSecurityGroupID *string `json:"networkSecurityGroupId,omitempty" tf:"network_security_group_id,omitempty"`

	// Is this the Primary IP Configuration? Possible values are true and false. Defaults to false.
	// +kubebuilder:validation:Optional
	Primary *bool `json:"primary,omitempty" tf:"primary,omitempty"`
}

func (*OrchestratedVirtualMachineScaleSetNetworkInterfaceParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OrchestratedVirtualMachineScaleSetNetworkInterfaceParameters.

func (*OrchestratedVirtualMachineScaleSetNetworkInterfaceParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type OrchestratedVirtualMachineScaleSetObservation

type OrchestratedVirtualMachineScaleSetObservation struct {

	// An additional_capabilities block as defined below.
	AdditionalCapabilities []OrchestratedVirtualMachineScaleSetAdditionalCapabilitiesObservation `json:"additionalCapabilities,omitempty" tf:"additional_capabilities,omitempty"`

	// An automatic_instance_repair block as defined below.
	AutomaticInstanceRepair []OrchestratedVirtualMachineScaleSetAutomaticInstanceRepairObservation `json:"automaticInstanceRepair,omitempty" tf:"automatic_instance_repair,omitempty"`

	// A boot_diagnostics block as defined below.
	BootDiagnostics []OrchestratedVirtualMachineScaleSetBootDiagnosticsObservation `json:"bootDiagnostics,omitempty" tf:"boot_diagnostics,omitempty"`

	// Specifies the ID of the Capacity Reservation Group which the Virtual Machine Scale Set should be allocated to. Changing this forces a new resource to be created.
	CapacityReservationGroupID *string `json:"capacityReservationGroupId,omitempty" tf:"capacity_reservation_group_id,omitempty"`

	// One or more data_disk blocks as defined below.
	DataDisk []OrchestratedVirtualMachineScaleSetDataDiskObservation `json:"dataDisk,omitempty" tf:"data_disk,omitempty"`

	// Should disks attached to this Virtual Machine Scale Set be encrypted by enabling Encryption at Host?
	EncryptionAtHostEnabled *bool `json:"encryptionAtHostEnabled,omitempty" tf:"encryption_at_host_enabled,omitempty"`

	// The Policy which should be used by Spot Virtual Machines that are Evicted from the Scale Set. Possible values are Deallocate and Delete. Changing this forces a new resource to be created.
	EvictionPolicy *string `json:"evictionPolicy,omitempty" tf:"eviction_policy,omitempty"`

	// One or more extension blocks as defined below
	Extension []OrchestratedVirtualMachineScaleSetExtensionObservation `json:"extension,omitempty" tf:"extension,omitempty"`

	// Should extension operations be allowed on the Virtual Machine Scale Set? Possible values are true or false. Defaults to true. Changing this forces a new Virtual Machine Scale Set to be created.
	ExtensionOperationsEnabled *bool `json:"extensionOperationsEnabled,omitempty" tf:"extension_operations_enabled,omitempty"`

	// Specifies the time alloted for all extensions to start. The time duration should be between 15 minutes and 120 minutes (inclusive) and should be specified in ISO 8601 format. Defaults to PT1H30M.
	ExtensionsTimeBudget *string `json:"extensionsTimeBudget,omitempty" tf:"extensions_time_budget,omitempty"`

	// The ID of the Virtual Machine Scale Set.
	ID *string `json:"id,omitempty" tf:"id,omitempty"`

	// An identity block as defined below.
	Identity []OrchestratedVirtualMachineScaleSetIdentityObservation `json:"identity,omitempty" tf:"identity,omitempty"`

	// The number of Virtual Machines in the Virtual Machine Scale Set.
	Instances *float64 `json:"instances,omitempty" tf:"instances,omitempty"`

	// Specifies the type of on-premise license (also known as Azure Hybrid Use Benefit) which should be used for this Virtual Machine Scale Set. Possible values are None, Windows_Client and Windows_Server.
	LicenseType *string `json:"licenseType,omitempty" tf:"license_type,omitempty"`

	// The Azure location where the Virtual Machine Scale Set should exist. Changing this forces a new resource to be created.
	Location *string `json:"location,omitempty" tf:"location,omitempty"`

	// The maximum price you're willing to pay for each Virtual Machine in this Scale Set, in US Dollars; which must be greater than the current spot price. If this bid price falls below the current spot price the Virtual Machines in the Scale Set will be evicted using the eviction_policy. Defaults to -1, which means that each Virtual Machine in the Scale Set should not be evicted for price reasons.
	MaxBidPrice *float64 `json:"maxBidPrice,omitempty" tf:"max_bid_price,omitempty"`

	// One or more network_interface blocks as defined below.
	NetworkInterface []OrchestratedVirtualMachineScaleSetNetworkInterfaceObservation `json:"networkInterface,omitempty" tf:"network_interface,omitempty"`

	// An os_disk block as defined below.
	OsDisk []OrchestratedVirtualMachineScaleSetOsDiskObservation `json:"osDisk,omitempty" tf:"os_disk,omitempty"`

	// An os_profile block as defined below.
	OsProfile []OsProfileObservation `json:"osProfile,omitempty" tf:"os_profile,omitempty"`

	// A plan block as documented below. Changing this forces a new resource to be created.
	Plan []OrchestratedVirtualMachineScaleSetPlanObservation `json:"plan,omitempty" tf:"plan,omitempty"`

	// Specifies the number of fault domains that are used by this Virtual Machine Scale Set. Changing this forces a new resource to be created.
	PlatformFaultDomainCount *float64 `json:"platformFaultDomainCount,omitempty" tf:"platform_fault_domain_count,omitempty"`

	// The Priority of this Virtual Machine Scale Set. Possible values are Regular and Spot. Defaults to Regular. Changing this value forces a new resource.
	Priority *string `json:"priority,omitempty" tf:"priority,omitempty"`

	// a priority_mix block as defined below
	PriorityMix []PriorityMixObservation `json:"priorityMix,omitempty" tf:"priority_mix,omitempty"`

	// The ID of the Proximity Placement Group which the Virtual Machine should be assigned to. Changing this forces a new resource to be created.
	ProximityPlacementGroupID *string `json:"proximityPlacementGroupId,omitempty" tf:"proximity_placement_group_id,omitempty"`

	// The name of the Resource Group in which the Virtual Machine Scale Set should exist. Changing this forces a new resource to be created.
	ResourceGroupName *string `json:"resourceGroupName,omitempty" tf:"resource_group_name,omitempty"`

	// Should this Virtual Machine Scale Set be limited to a Single Placement Group, which means the number of instances will be capped at 100 Virtual Machines. Possible values are true or false.
	SinglePlacementGroup *bool `json:"singlePlacementGroup,omitempty" tf:"single_placement_group,omitempty"`

	// The name of the SKU to be used by this Virtual Machine Scale Set. Valid values include: any of the General purpose, Compute optimized, Memory optimized, Storage optimized, GPU optimized, FPGA optimized, High performance, or Previous generation virtual machine SKUs.
	SkuName *string `json:"skuName,omitempty" tf:"sku_name,omitempty"`

	// The ID of an Image which each Virtual Machine in this Scale Set should be based on. Possible Image ID types include Image IDs, Shared Image IDs, Shared Image Version IDs, Community Gallery Image IDs, Community Gallery Image Version IDs, Shared Gallery Image IDs and Shared Gallery Image Version IDs.
	SourceImageID *string `json:"sourceImageId,omitempty" tf:"source_image_id,omitempty"`

	// A source_image_reference block as defined below.
	SourceImageReference []OrchestratedVirtualMachineScaleSetSourceImageReferenceObservation `json:"sourceImageReference,omitempty" tf:"source_image_reference,omitempty"`

	// A mapping of tags which should be assigned to this Virtual Machine Scale Set.
	// +mapType=granular
	Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"`

	// A termination_notification block as defined below.
	TerminationNotification []OrchestratedVirtualMachineScaleSetTerminationNotificationObservation `json:"terminationNotification,omitempty" tf:"termination_notification,omitempty"`

	// The Unique ID for the Virtual Machine Scale Set.
	UniqueID *string `json:"uniqueId,omitempty" tf:"unique_id,omitempty"`

	// Should the Virtual Machines in this Scale Set be strictly evenly distributed across Availability Zones? Defaults to false. Changing this forces a new resource to be created.
	ZoneBalance *bool `json:"zoneBalance,omitempty" tf:"zone_balance,omitempty"`

	// Specifies a list of Availability Zones across which the Virtual Machine Scale Set will create instances. Changing this forces a new Virtual Machine Scale Set to be created.
	// +listType=set
	Zones []*string `json:"zones,omitempty" tf:"zones,omitempty"`
}

func (*OrchestratedVirtualMachineScaleSetObservation) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OrchestratedVirtualMachineScaleSetObservation.

func (*OrchestratedVirtualMachineScaleSetObservation) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type OrchestratedVirtualMachineScaleSetOsDiskDiffDiskSettingsInitParameters added in v0.35.0

type OrchestratedVirtualMachineScaleSetOsDiskDiffDiskSettingsInitParameters struct {

	// Specifies the Ephemeral Disk Settings for the OS Disk. At this time the only possible value is Local. Changing this forces a new resource to be created.
	Option *string `json:"option,omitempty" tf:"option,omitempty"`

	// Specifies where to store the Ephemeral Disk. Possible values are CacheDisk and ResourceDisk. Defaults to CacheDisk. Changing this forces a new resource to be created.
	Placement *string `json:"placement,omitempty" tf:"placement,omitempty"`
}

func (*OrchestratedVirtualMachineScaleSetOsDiskDiffDiskSettingsInitParameters) DeepCopy added in v0.35.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OrchestratedVirtualMachineScaleSetOsDiskDiffDiskSettingsInitParameters.

func (*OrchestratedVirtualMachineScaleSetOsDiskDiffDiskSettingsInitParameters) DeepCopyInto added in v0.35.0

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type OrchestratedVirtualMachineScaleSetOsDiskDiffDiskSettingsObservation

type OrchestratedVirtualMachineScaleSetOsDiskDiffDiskSettingsObservation struct {

	// Specifies the Ephemeral Disk Settings for the OS Disk. At this time the only possible value is Local. Changing this forces a new resource to be created.
	Option *string `json:"option,omitempty" tf:"option,omitempty"`

	// Specifies where to store the Ephemeral Disk. Possible values are CacheDisk and ResourceDisk. Defaults to CacheDisk. Changing this forces a new resource to be created.
	Placement *string `json:"placement,omitempty" tf:"placement,omitempty"`
}

func (*OrchestratedVirtualMachineScaleSetOsDiskDiffDiskSettingsObservation) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OrchestratedVirtualMachineScaleSetOsDiskDiffDiskSettingsObservation.

func (*OrchestratedVirtualMachineScaleSetOsDiskDiffDiskSettingsObservation) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type OrchestratedVirtualMachineScaleSetOsDiskDiffDiskSettingsParameters

type OrchestratedVirtualMachineScaleSetOsDiskDiffDiskSettingsParameters struct {

	// Specifies the Ephemeral Disk Settings for the OS Disk. At this time the only possible value is Local. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	Option *string `json:"option" tf:"option,omitempty"`

	// Specifies where to store the Ephemeral Disk. Possible values are CacheDisk and ResourceDisk. Defaults to CacheDisk. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	Placement *string `json:"placement,omitempty" tf:"placement,omitempty"`
}

func (*OrchestratedVirtualMachineScaleSetOsDiskDiffDiskSettingsParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OrchestratedVirtualMachineScaleSetOsDiskDiffDiskSettingsParameters.

func (*OrchestratedVirtualMachineScaleSetOsDiskDiffDiskSettingsParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type OrchestratedVirtualMachineScaleSetOsDiskInitParameters added in v0.35.0

type OrchestratedVirtualMachineScaleSetOsDiskInitParameters struct {

	// The Type of Caching which should be used for the Internal OS Disk. Possible values are None, ReadOnly and ReadWrite.
	Caching *string `json:"caching,omitempty" tf:"caching,omitempty"`

	// A diff_disk_settings block as defined above. Changing this forces a new resource to be created.
	DiffDiskSettings []OrchestratedVirtualMachineScaleSetOsDiskDiffDiskSettingsInitParameters `json:"diffDiskSettings,omitempty" tf:"diff_disk_settings,omitempty"`

	// The ID of the Disk Encryption Set which should be used to encrypt this OS Disk. Changing this forces a new resource to be created.
	DiskEncryptionSetID *string `json:"diskEncryptionSetId,omitempty" tf:"disk_encryption_set_id,omitempty"`

	// The Size of the Internal OS Disk in GB, if you wish to vary from the size used in the image this Virtual Machine Scale Set is sourced from.
	DiskSizeGb *float64 `json:"diskSizeGb,omitempty" tf:"disk_size_gb,omitempty"`

	// The Type of Storage Account which should back this the Internal OS Disk. Possible values include Standard_LRS, StandardSSD_LRS, StandardSSD_ZRS, Premium_LRS and Premium_ZRS. Changing this forces a new resource to be created.
	StorageAccountType *string `json:"storageAccountType,omitempty" tf:"storage_account_type,omitempty"`

	// Specifies if Write Accelerator is enabled on the OS Disk. Defaults to false.
	WriteAcceleratorEnabled *bool `json:"writeAcceleratorEnabled,omitempty" tf:"write_accelerator_enabled,omitempty"`
}

func (*OrchestratedVirtualMachineScaleSetOsDiskInitParameters) DeepCopy added in v0.35.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OrchestratedVirtualMachineScaleSetOsDiskInitParameters.

func (*OrchestratedVirtualMachineScaleSetOsDiskInitParameters) DeepCopyInto added in v0.35.0

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type OrchestratedVirtualMachineScaleSetOsDiskObservation

type OrchestratedVirtualMachineScaleSetOsDiskObservation struct {

	// The Type of Caching which should be used for the Internal OS Disk. Possible values are None, ReadOnly and ReadWrite.
	Caching *string `json:"caching,omitempty" tf:"caching,omitempty"`

	// A diff_disk_settings block as defined above. Changing this forces a new resource to be created.
	DiffDiskSettings []OrchestratedVirtualMachineScaleSetOsDiskDiffDiskSettingsObservation `json:"diffDiskSettings,omitempty" tf:"diff_disk_settings,omitempty"`

	// The ID of the Disk Encryption Set which should be used to encrypt this OS Disk. Changing this forces a new resource to be created.
	DiskEncryptionSetID *string `json:"diskEncryptionSetId,omitempty" tf:"disk_encryption_set_id,omitempty"`

	// The Size of the Internal OS Disk in GB, if you wish to vary from the size used in the image this Virtual Machine Scale Set is sourced from.
	DiskSizeGb *float64 `json:"diskSizeGb,omitempty" tf:"disk_size_gb,omitempty"`

	// The Type of Storage Account which should back this the Internal OS Disk. Possible values include Standard_LRS, StandardSSD_LRS, StandardSSD_ZRS, Premium_LRS and Premium_ZRS. Changing this forces a new resource to be created.
	StorageAccountType *string `json:"storageAccountType,omitempty" tf:"storage_account_type,omitempty"`

	// Specifies if Write Accelerator is enabled on the OS Disk. Defaults to false.
	WriteAcceleratorEnabled *bool `json:"writeAcceleratorEnabled,omitempty" tf:"write_accelerator_enabled,omitempty"`
}

func (*OrchestratedVirtualMachineScaleSetOsDiskObservation) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OrchestratedVirtualMachineScaleSetOsDiskObservation.

func (*OrchestratedVirtualMachineScaleSetOsDiskObservation) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type OrchestratedVirtualMachineScaleSetOsDiskParameters

type OrchestratedVirtualMachineScaleSetOsDiskParameters struct {

	// The Type of Caching which should be used for the Internal OS Disk. Possible values are None, ReadOnly and ReadWrite.
	// +kubebuilder:validation:Optional
	Caching *string `json:"caching" tf:"caching,omitempty"`

	// A diff_disk_settings block as defined above. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	DiffDiskSettings []OrchestratedVirtualMachineScaleSetOsDiskDiffDiskSettingsParameters `json:"diffDiskSettings,omitempty" tf:"diff_disk_settings,omitempty"`

	// The ID of the Disk Encryption Set which should be used to encrypt this OS Disk. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	DiskEncryptionSetID *string `json:"diskEncryptionSetId,omitempty" tf:"disk_encryption_set_id,omitempty"`

	// The Size of the Internal OS Disk in GB, if you wish to vary from the size used in the image this Virtual Machine Scale Set is sourced from.
	// +kubebuilder:validation:Optional
	DiskSizeGb *float64 `json:"diskSizeGb,omitempty" tf:"disk_size_gb,omitempty"`

	// The Type of Storage Account which should back this the Internal OS Disk. Possible values include Standard_LRS, StandardSSD_LRS, StandardSSD_ZRS, Premium_LRS and Premium_ZRS. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	StorageAccountType *string `json:"storageAccountType" tf:"storage_account_type,omitempty"`

	// Specifies if Write Accelerator is enabled on the OS Disk. Defaults to false.
	// +kubebuilder:validation:Optional
	WriteAcceleratorEnabled *bool `json:"writeAcceleratorEnabled,omitempty" tf:"write_accelerator_enabled,omitempty"`
}

func (*OrchestratedVirtualMachineScaleSetOsDiskParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OrchestratedVirtualMachineScaleSetOsDiskParameters.

func (*OrchestratedVirtualMachineScaleSetOsDiskParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type OrchestratedVirtualMachineScaleSetParameters

type OrchestratedVirtualMachineScaleSetParameters struct {

	// An additional_capabilities block as defined below.
	// +kubebuilder:validation:Optional
	AdditionalCapabilities []OrchestratedVirtualMachineScaleSetAdditionalCapabilitiesParameters `json:"additionalCapabilities,omitempty" tf:"additional_capabilities,omitempty"`

	// An automatic_instance_repair block as defined below.
	// +kubebuilder:validation:Optional
	AutomaticInstanceRepair []OrchestratedVirtualMachineScaleSetAutomaticInstanceRepairParameters `json:"automaticInstanceRepair,omitempty" tf:"automatic_instance_repair,omitempty"`

	// A boot_diagnostics block as defined below.
	// +kubebuilder:validation:Optional
	BootDiagnostics []OrchestratedVirtualMachineScaleSetBootDiagnosticsParameters `json:"bootDiagnostics,omitempty" tf:"boot_diagnostics,omitempty"`

	// Specifies the ID of the Capacity Reservation Group which the Virtual Machine Scale Set should be allocated to. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	CapacityReservationGroupID *string `json:"capacityReservationGroupId,omitempty" tf:"capacity_reservation_group_id,omitempty"`

	// One or more data_disk blocks as defined below.
	// +kubebuilder:validation:Optional
	DataDisk []OrchestratedVirtualMachineScaleSetDataDiskParameters `json:"dataDisk,omitempty" tf:"data_disk,omitempty"`

	// Should disks attached to this Virtual Machine Scale Set be encrypted by enabling Encryption at Host?
	// +kubebuilder:validation:Optional
	EncryptionAtHostEnabled *bool `json:"encryptionAtHostEnabled,omitempty" tf:"encryption_at_host_enabled,omitempty"`

	// The Policy which should be used by Spot Virtual Machines that are Evicted from the Scale Set. Possible values are Deallocate and Delete. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	EvictionPolicy *string `json:"evictionPolicy,omitempty" tf:"eviction_policy,omitempty"`

	// One or more extension blocks as defined below
	// +kubebuilder:validation:Optional
	Extension []OrchestratedVirtualMachineScaleSetExtensionParameters `json:"extension,omitempty" tf:"extension,omitempty"`

	// Should extension operations be allowed on the Virtual Machine Scale Set? Possible values are true or false. Defaults to true. Changing this forces a new Virtual Machine Scale Set to be created.
	// +kubebuilder:validation:Optional
	ExtensionOperationsEnabled *bool `json:"extensionOperationsEnabled,omitempty" tf:"extension_operations_enabled,omitempty"`

	// Specifies the time alloted for all extensions to start. The time duration should be between 15 minutes and 120 minutes (inclusive) and should be specified in ISO 8601 format. Defaults to PT1H30M.
	// +kubebuilder:validation:Optional
	ExtensionsTimeBudget *string `json:"extensionsTimeBudget,omitempty" tf:"extensions_time_budget,omitempty"`

	// An identity block as defined below.
	// +kubebuilder:validation:Optional
	Identity []OrchestratedVirtualMachineScaleSetIdentityParameters `json:"identity,omitempty" tf:"identity,omitempty"`

	// The number of Virtual Machines in the Virtual Machine Scale Set.
	// +kubebuilder:validation:Optional
	Instances *float64 `json:"instances,omitempty" tf:"instances,omitempty"`

	// Specifies the type of on-premise license (also known as Azure Hybrid Use Benefit) which should be used for this Virtual Machine Scale Set. Possible values are None, Windows_Client and Windows_Server.
	// +kubebuilder:validation:Optional
	LicenseType *string `json:"licenseType,omitempty" tf:"license_type,omitempty"`

	// The Azure location where the Virtual Machine Scale Set should exist. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	Location *string `json:"location,omitempty" tf:"location,omitempty"`

	// The maximum price you're willing to pay for each Virtual Machine in this Scale Set, in US Dollars; which must be greater than the current spot price. If this bid price falls below the current spot price the Virtual Machines in the Scale Set will be evicted using the eviction_policy. Defaults to -1, which means that each Virtual Machine in the Scale Set should not be evicted for price reasons.
	// +kubebuilder:validation:Optional
	MaxBidPrice *float64 `json:"maxBidPrice,omitempty" tf:"max_bid_price,omitempty"`

	// One or more network_interface blocks as defined below.
	// +kubebuilder:validation:Optional
	NetworkInterface []OrchestratedVirtualMachineScaleSetNetworkInterfaceParameters `json:"networkInterface,omitempty" tf:"network_interface,omitempty"`

	// An os_disk block as defined below.
	// +kubebuilder:validation:Optional
	OsDisk []OrchestratedVirtualMachineScaleSetOsDiskParameters `json:"osDisk,omitempty" tf:"os_disk,omitempty"`

	// An os_profile block as defined below.
	// +kubebuilder:validation:Optional
	OsProfile []OsProfileParameters `json:"osProfile,omitempty" tf:"os_profile,omitempty"`

	// A plan block as documented below. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	Plan []OrchestratedVirtualMachineScaleSetPlanParameters `json:"plan,omitempty" tf:"plan,omitempty"`

	// Specifies the number of fault domains that are used by this Virtual Machine Scale Set. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	PlatformFaultDomainCount *float64 `json:"platformFaultDomainCount,omitempty" tf:"platform_fault_domain_count,omitempty"`

	// The Priority of this Virtual Machine Scale Set. Possible values are Regular and Spot. Defaults to Regular. Changing this value forces a new resource.
	// +kubebuilder:validation:Optional
	Priority *string `json:"priority,omitempty" tf:"priority,omitempty"`

	// a priority_mix block as defined below
	// +kubebuilder:validation:Optional
	PriorityMix []PriorityMixParameters `json:"priorityMix,omitempty" tf:"priority_mix,omitempty"`

	// The ID of the Proximity Placement Group which the Virtual Machine should be assigned to. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	ProximityPlacementGroupID *string `json:"proximityPlacementGroupId,omitempty" tf:"proximity_placement_group_id,omitempty"`

	// The name of the Resource Group in which the Virtual Machine Scale Set should exist. 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:"-"`

	// Should this Virtual Machine Scale Set be limited to a Single Placement Group, which means the number of instances will be capped at 100 Virtual Machines. Possible values are true or false.
	// +kubebuilder:validation:Optional
	SinglePlacementGroup *bool `json:"singlePlacementGroup,omitempty" tf:"single_placement_group,omitempty"`

	// The name of the SKU to be used by this Virtual Machine Scale Set. Valid values include: any of the General purpose, Compute optimized, Memory optimized, Storage optimized, GPU optimized, FPGA optimized, High performance, or Previous generation virtual machine SKUs.
	// +kubebuilder:validation:Optional
	SkuName *string `json:"skuName,omitempty" tf:"sku_name,omitempty"`

	// The ID of an Image which each Virtual Machine in this Scale Set should be based on. Possible Image ID types include Image IDs, Shared Image IDs, Shared Image Version IDs, Community Gallery Image IDs, Community Gallery Image Version IDs, Shared Gallery Image IDs and Shared Gallery Image Version IDs.
	// +kubebuilder:validation:Optional
	SourceImageID *string `json:"sourceImageId,omitempty" tf:"source_image_id,omitempty"`

	// A source_image_reference block as defined below.
	// +kubebuilder:validation:Optional
	SourceImageReference []OrchestratedVirtualMachineScaleSetSourceImageReferenceParameters `json:"sourceImageReference,omitempty" tf:"source_image_reference,omitempty"`

	// A mapping of tags which should be assigned to this Virtual Machine Scale Set.
	// +kubebuilder:validation:Optional
	// +mapType=granular
	Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"`

	// A termination_notification block as defined below.
	// +kubebuilder:validation:Optional
	TerminationNotification []OrchestratedVirtualMachineScaleSetTerminationNotificationParameters `json:"terminationNotification,omitempty" tf:"termination_notification,omitempty"`

	// The Base64-Encoded User Data which should be used for this Virtual Machine Scale Set.
	// +kubebuilder:validation:Optional
	UserDataBase64SecretRef *v1.SecretKeySelector `json:"userDataBase64SecretRef,omitempty" tf:"-"`

	// Should the Virtual Machines in this Scale Set be strictly evenly distributed across Availability Zones? Defaults to false. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	ZoneBalance *bool `json:"zoneBalance,omitempty" tf:"zone_balance,omitempty"`

	// Specifies a list of Availability Zones across which the Virtual Machine Scale Set will create instances. Changing this forces a new Virtual Machine Scale Set to be created.
	// +kubebuilder:validation:Optional
	// +listType=set
	Zones []*string `json:"zones,omitempty" tf:"zones,omitempty"`
}

func (*OrchestratedVirtualMachineScaleSetParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OrchestratedVirtualMachineScaleSetParameters.

func (*OrchestratedVirtualMachineScaleSetParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type OrchestratedVirtualMachineScaleSetPlanInitParameters added in v0.35.0

type OrchestratedVirtualMachineScaleSetPlanInitParameters struct {

	// Specifies the name of the image from the marketplace. Changing this forces a new resource to be created.
	Name *string `json:"name,omitempty" tf:"name,omitempty"`

	// Specifies the product of the image from the marketplace. Changing this forces a new resource to be created.
	Product *string `json:"product,omitempty" tf:"product,omitempty"`

	// Specifies the publisher of the image. Changing this forces a new resource to be created.
	Publisher *string `json:"publisher,omitempty" tf:"publisher,omitempty"`
}

func (*OrchestratedVirtualMachineScaleSetPlanInitParameters) DeepCopy added in v0.35.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OrchestratedVirtualMachineScaleSetPlanInitParameters.

func (*OrchestratedVirtualMachineScaleSetPlanInitParameters) DeepCopyInto added in v0.35.0

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type OrchestratedVirtualMachineScaleSetPlanObservation

type OrchestratedVirtualMachineScaleSetPlanObservation struct {

	// Specifies the name of the image from the marketplace. Changing this forces a new resource to be created.
	Name *string `json:"name,omitempty" tf:"name,omitempty"`

	// Specifies the product of the image from the marketplace. Changing this forces a new resource to be created.
	Product *string `json:"product,omitempty" tf:"product,omitempty"`

	// Specifies the publisher of the image. Changing this forces a new resource to be created.
	Publisher *string `json:"publisher,omitempty" tf:"publisher,omitempty"`
}

func (*OrchestratedVirtualMachineScaleSetPlanObservation) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OrchestratedVirtualMachineScaleSetPlanObservation.

func (*OrchestratedVirtualMachineScaleSetPlanObservation) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type OrchestratedVirtualMachineScaleSetPlanParameters

type OrchestratedVirtualMachineScaleSetPlanParameters struct {

	// Specifies the name of the image from the marketplace. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	Name *string `json:"name" tf:"name,omitempty"`

	// Specifies the product of the image from the marketplace. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	Product *string `json:"product" tf:"product,omitempty"`

	// Specifies the publisher of the image. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	Publisher *string `json:"publisher" tf:"publisher,omitempty"`
}

func (*OrchestratedVirtualMachineScaleSetPlanParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OrchestratedVirtualMachineScaleSetPlanParameters.

func (*OrchestratedVirtualMachineScaleSetPlanParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type OrchestratedVirtualMachineScaleSetSourceImageReferenceInitParameters added in v0.35.0

type OrchestratedVirtualMachineScaleSetSourceImageReferenceInitParameters struct {

	// Specifies the offer of the image used to create the virtual machines. Changing this forces a new resource to be created.
	Offer *string `json:"offer,omitempty" tf:"offer,omitempty"`

	// Specifies the publisher of the image used to create the virtual machines. Changing this forces a new resource to be created.
	Publisher *string `json:"publisher,omitempty" tf:"publisher,omitempty"`

	// Specifies the SKU of the image used to create the virtual machines.
	Sku *string `json:"sku,omitempty" tf:"sku,omitempty"`

	// Specifies the version of the image used to create the virtual machines.
	Version *string `json:"version,omitempty" tf:"version,omitempty"`
}

func (*OrchestratedVirtualMachineScaleSetSourceImageReferenceInitParameters) DeepCopy added in v0.35.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OrchestratedVirtualMachineScaleSetSourceImageReferenceInitParameters.

func (*OrchestratedVirtualMachineScaleSetSourceImageReferenceInitParameters) DeepCopyInto added in v0.35.0

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type OrchestratedVirtualMachineScaleSetSourceImageReferenceObservation

type OrchestratedVirtualMachineScaleSetSourceImageReferenceObservation struct {

	// Specifies the offer of the image used to create the virtual machines. Changing this forces a new resource to be created.
	Offer *string `json:"offer,omitempty" tf:"offer,omitempty"`

	// Specifies the publisher of the image used to create the virtual machines. Changing this forces a new resource to be created.
	Publisher *string `json:"publisher,omitempty" tf:"publisher,omitempty"`

	// Specifies the SKU of the image used to create the virtual machines.
	Sku *string `json:"sku,omitempty" tf:"sku,omitempty"`

	// Specifies the version of the image used to create the virtual machines.
	Version *string `json:"version,omitempty" tf:"version,omitempty"`
}

func (*OrchestratedVirtualMachineScaleSetSourceImageReferenceObservation) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OrchestratedVirtualMachineScaleSetSourceImageReferenceObservation.

func (*OrchestratedVirtualMachineScaleSetSourceImageReferenceObservation) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type OrchestratedVirtualMachineScaleSetSourceImageReferenceParameters

type OrchestratedVirtualMachineScaleSetSourceImageReferenceParameters struct {

	// Specifies the offer of the image used to create the virtual machines. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	Offer *string `json:"offer" tf:"offer,omitempty"`

	// Specifies the publisher of the image used to create the virtual machines. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	Publisher *string `json:"publisher" tf:"publisher,omitempty"`

	// Specifies the SKU of the image used to create the virtual machines.
	// +kubebuilder:validation:Optional
	Sku *string `json:"sku" tf:"sku,omitempty"`

	// Specifies the version of the image used to create the virtual machines.
	// +kubebuilder:validation:Optional
	Version *string `json:"version" tf:"version,omitempty"`
}

func (*OrchestratedVirtualMachineScaleSetSourceImageReferenceParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OrchestratedVirtualMachineScaleSetSourceImageReferenceParameters.

func (*OrchestratedVirtualMachineScaleSetSourceImageReferenceParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type OrchestratedVirtualMachineScaleSetSpec

type OrchestratedVirtualMachineScaleSetSpec struct {
	v1.ResourceSpec `json:",inline"`
	ForProvider     OrchestratedVirtualMachineScaleSetParameters `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 OrchestratedVirtualMachineScaleSetInitParameters `json:"initProvider,omitempty"`
}

OrchestratedVirtualMachineScaleSetSpec defines the desired state of OrchestratedVirtualMachineScaleSet

func (*OrchestratedVirtualMachineScaleSetSpec) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OrchestratedVirtualMachineScaleSetSpec.

func (*OrchestratedVirtualMachineScaleSetSpec) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type OrchestratedVirtualMachineScaleSetStatus

type OrchestratedVirtualMachineScaleSetStatus struct {
	v1.ResourceStatus `json:",inline"`
	AtProvider        OrchestratedVirtualMachineScaleSetObservation `json:"atProvider,omitempty"`
}

OrchestratedVirtualMachineScaleSetStatus defines the observed state of OrchestratedVirtualMachineScaleSet.

func (*OrchestratedVirtualMachineScaleSetStatus) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OrchestratedVirtualMachineScaleSetStatus.

func (*OrchestratedVirtualMachineScaleSetStatus) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type OrchestratedVirtualMachineScaleSetTerminationNotificationInitParameters added in v0.35.0

type OrchestratedVirtualMachineScaleSetTerminationNotificationInitParameters struct {

	// Should the termination notification be enabled on this Virtual Machine Scale Set? Possible values true or false
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// Length of time (in minutes, between 5 and 15) a notification to be sent to the VM on the instance metadata server till the VM gets deleted. The time duration should be specified in ISO 8601 format. Defaults to PT5M.
	Timeout *string `json:"timeout,omitempty" tf:"timeout,omitempty"`
}

func (*OrchestratedVirtualMachineScaleSetTerminationNotificationInitParameters) DeepCopy added in v0.35.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OrchestratedVirtualMachineScaleSetTerminationNotificationInitParameters.

func (*OrchestratedVirtualMachineScaleSetTerminationNotificationInitParameters) DeepCopyInto added in v0.35.0

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type OrchestratedVirtualMachineScaleSetTerminationNotificationObservation

type OrchestratedVirtualMachineScaleSetTerminationNotificationObservation struct {

	// Should the termination notification be enabled on this Virtual Machine Scale Set? Possible values true or false
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// Length of time (in minutes, between 5 and 15) a notification to be sent to the VM on the instance metadata server till the VM gets deleted. The time duration should be specified in ISO 8601 format. Defaults to PT5M.
	Timeout *string `json:"timeout,omitempty" tf:"timeout,omitempty"`
}

func (*OrchestratedVirtualMachineScaleSetTerminationNotificationObservation) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OrchestratedVirtualMachineScaleSetTerminationNotificationObservation.

func (*OrchestratedVirtualMachineScaleSetTerminationNotificationObservation) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type OrchestratedVirtualMachineScaleSetTerminationNotificationParameters

type OrchestratedVirtualMachineScaleSetTerminationNotificationParameters struct {

	// Should the termination notification be enabled on this Virtual Machine Scale Set? Possible values true or false
	// +kubebuilder:validation:Optional
	Enabled *bool `json:"enabled" tf:"enabled,omitempty"`

	// Length of time (in minutes, between 5 and 15) a notification to be sent to the VM on the instance metadata server till the VM gets deleted. The time duration should be specified in ISO 8601 format. Defaults to PT5M.
	// +kubebuilder:validation:Optional
	Timeout *string `json:"timeout,omitempty" tf:"timeout,omitempty"`
}

func (*OrchestratedVirtualMachineScaleSetTerminationNotificationParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OrchestratedVirtualMachineScaleSetTerminationNotificationParameters.

func (*OrchestratedVirtualMachineScaleSetTerminationNotificationParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type OsDiskDiffDiskSettingsInitParameters added in v0.35.0

type OsDiskDiffDiskSettingsInitParameters struct {

	// Specifies the Ephemeral Disk Settings for the OS Disk. At this time the only possible value is Local. Changing this forces a new resource to be created.
	Option *string `json:"option,omitempty" tf:"option,omitempty"`

	// Specifies where to store the Ephemeral Disk. Possible values are CacheDisk and ResourceDisk. Defaults to CacheDisk. Changing this forces a new resource to be created.
	Placement *string `json:"placement,omitempty" tf:"placement,omitempty"`
}

func (*OsDiskDiffDiskSettingsInitParameters) DeepCopy added in v0.35.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OsDiskDiffDiskSettingsInitParameters.

func (*OsDiskDiffDiskSettingsInitParameters) DeepCopyInto added in v0.35.0

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type OsDiskDiffDiskSettingsObservation

type OsDiskDiffDiskSettingsObservation struct {

	// Specifies the Ephemeral Disk Settings for the OS Disk. At this time the only possible value is Local. Changing this forces a new resource to be created.
	Option *string `json:"option,omitempty" tf:"option,omitempty"`

	// Specifies where to store the Ephemeral Disk. Possible values are CacheDisk and ResourceDisk. Defaults to CacheDisk. Changing this forces a new resource to be created.
	Placement *string `json:"placement,omitempty" tf:"placement,omitempty"`
}

func (*OsDiskDiffDiskSettingsObservation) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OsDiskDiffDiskSettingsObservation.

func (*OsDiskDiffDiskSettingsObservation) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type OsDiskDiffDiskSettingsParameters

type OsDiskDiffDiskSettingsParameters struct {

	// Specifies the Ephemeral Disk Settings for the OS Disk. At this time the only possible value is Local. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	Option *string `json:"option" tf:"option,omitempty"`

	// Specifies where to store the Ephemeral Disk. Possible values are CacheDisk and ResourceDisk. Defaults to CacheDisk. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	Placement *string `json:"placement,omitempty" tf:"placement,omitempty"`
}

func (*OsDiskDiffDiskSettingsParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OsDiskDiffDiskSettingsParameters.

func (*OsDiskDiffDiskSettingsParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type OsDiskInitParameters added in v0.35.0

type OsDiskInitParameters struct {

	// Specifies the URI in Azure storage of the blob that you want to use to create the image. Changing this forces a new resource to be created.
	BlobURI *string `json:"blobUri,omitempty" tf:"blob_uri,omitempty"`

	// Specifies the caching mode as ReadWrite, ReadOnly, or None. The default is None.
	Caching *string `json:"caching,omitempty" tf:"caching,omitempty"`

	// The ID of the Disk Encryption Set which should be used to encrypt this image. Changing this forces a new resource to be created.
	DiskEncryptionSetID *string `json:"diskEncryptionSetId,omitempty" tf:"disk_encryption_set_id,omitempty"`

	// Specifies the ID of the managed disk resource that you want to use to create the image.
	ManagedDiskID *string `json:"managedDiskId,omitempty" tf:"managed_disk_id,omitempty"`

	// Specifies the state of the operating system contained in the blob. Currently, the only value is Generalized. Possible values are Generalized and Specialized.
	OsState *string `json:"osState,omitempty" tf:"os_state,omitempty"`

	// Specifies the type of operating system contained in the virtual machine image. Possible values are: Windows or Linux.
	OsType *string `json:"osType,omitempty" tf:"os_type,omitempty"`

	// Specifies the size of the image to be created. Changing this forces a new resource to be created.
	SizeGb *float64 `json:"sizeGb,omitempty" tf:"size_gb,omitempty"`
}

func (*OsDiskInitParameters) DeepCopy added in v0.35.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OsDiskInitParameters.

func (*OsDiskInitParameters) DeepCopyInto added in v0.35.0

func (in *OsDiskInitParameters) DeepCopyInto(out *OsDiskInitParameters)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type OsDiskObservation

type OsDiskObservation struct {

	// Specifies the URI in Azure storage of the blob that you want to use to create the image. Changing this forces a new resource to be created.
	BlobURI *string `json:"blobUri,omitempty" tf:"blob_uri,omitempty"`

	// Specifies the caching mode as ReadWrite, ReadOnly, or None. The default is None.
	Caching *string `json:"caching,omitempty" tf:"caching,omitempty"`

	// The ID of the Disk Encryption Set which should be used to encrypt this image. Changing this forces a new resource to be created.
	DiskEncryptionSetID *string `json:"diskEncryptionSetId,omitempty" tf:"disk_encryption_set_id,omitempty"`

	// Specifies the ID of the managed disk resource that you want to use to create the image.
	ManagedDiskID *string `json:"managedDiskId,omitempty" tf:"managed_disk_id,omitempty"`

	// Specifies the state of the operating system contained in the blob. Currently, the only value is Generalized. Possible values are Generalized and Specialized.
	OsState *string `json:"osState,omitempty" tf:"os_state,omitempty"`

	// Specifies the type of operating system contained in the virtual machine image. Possible values are: Windows or Linux.
	OsType *string `json:"osType,omitempty" tf:"os_type,omitempty"`

	// Specifies the size of the image to be created. Changing this forces a new resource to be created.
	SizeGb *float64 `json:"sizeGb,omitempty" tf:"size_gb,omitempty"`
}

func (*OsDiskObservation) DeepCopy

func (in *OsDiskObservation) DeepCopy() *OsDiskObservation

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OsDiskObservation.

func (*OsDiskObservation) DeepCopyInto

func (in *OsDiskObservation) DeepCopyInto(out *OsDiskObservation)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type OsDiskParameters

type OsDiskParameters struct {

	// Specifies the URI in Azure storage of the blob that you want to use to create the image. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	BlobURI *string `json:"blobUri,omitempty" tf:"blob_uri,omitempty"`

	// Specifies the caching mode as ReadWrite, ReadOnly, or None. The default is None.
	// +kubebuilder:validation:Optional
	Caching *string `json:"caching,omitempty" tf:"caching,omitempty"`

	// The ID of the Disk Encryption Set which should be used to encrypt this image. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	DiskEncryptionSetID *string `json:"diskEncryptionSetId,omitempty" tf:"disk_encryption_set_id,omitempty"`

	// Specifies the ID of the managed disk resource that you want to use to create the image.
	// +kubebuilder:validation:Optional
	ManagedDiskID *string `json:"managedDiskId,omitempty" tf:"managed_disk_id,omitempty"`

	// Specifies the state of the operating system contained in the blob. Currently, the only value is Generalized. Possible values are Generalized and Specialized.
	// +kubebuilder:validation:Optional
	OsState *string `json:"osState,omitempty" tf:"os_state,omitempty"`

	// Specifies the type of operating system contained in the virtual machine image. Possible values are: Windows or Linux.
	// +kubebuilder:validation:Optional
	OsType *string `json:"osType,omitempty" tf:"os_type,omitempty"`

	// Specifies the size of the image to be created. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	SizeGb *float64 `json:"sizeGb,omitempty" tf:"size_gb,omitempty"`
}

func (*OsDiskParameters) DeepCopy

func (in *OsDiskParameters) DeepCopy() *OsDiskParameters

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OsDiskParameters.

func (*OsDiskParameters) DeepCopyInto

func (in *OsDiskParameters) DeepCopyInto(out *OsDiskParameters)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type OsImageNotificationInitParameters added in v1.0.0

type OsImageNotificationInitParameters struct {

	// Length of time a notification to be sent to the VM on the instance metadata server till the VM gets OS upgraded. The only possible value is PT15M. Defaults to PT15M.
	Timeout *string `json:"timeout,omitempty" tf:"timeout,omitempty"`
}

func (*OsImageNotificationInitParameters) DeepCopy added in v1.0.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OsImageNotificationInitParameters.

func (*OsImageNotificationInitParameters) DeepCopyInto added in v1.0.0

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type OsImageNotificationObservation added in v1.0.0

type OsImageNotificationObservation struct {

	// Length of time a notification to be sent to the VM on the instance metadata server till the VM gets OS upgraded. The only possible value is PT15M. Defaults to PT15M.
	Timeout *string `json:"timeout,omitempty" tf:"timeout,omitempty"`
}

func (*OsImageNotificationObservation) DeepCopy added in v1.0.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OsImageNotificationObservation.

func (*OsImageNotificationObservation) DeepCopyInto added in v1.0.0

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type OsImageNotificationParameters added in v1.0.0

type OsImageNotificationParameters struct {

	// Length of time a notification to be sent to the VM on the instance metadata server till the VM gets OS upgraded. The only possible value is PT15M. Defaults to PT15M.
	// +kubebuilder:validation:Optional
	Timeout *string `json:"timeout,omitempty" tf:"timeout,omitempty"`
}

func (*OsImageNotificationParameters) DeepCopy added in v1.0.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OsImageNotificationParameters.

func (*OsImageNotificationParameters) DeepCopyInto added in v1.0.0

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type OsProfileInitParameters added in v0.35.0

type OsProfileInitParameters struct {

	// A linux_configuration block as documented below.
	LinuxConfiguration []LinuxConfigurationInitParameters `json:"linuxConfiguration,omitempty" tf:"linux_configuration,omitempty"`

	// A windows_configuration block as documented below.
	WindowsConfiguration []WindowsConfigurationInitParameters `json:"windowsConfiguration,omitempty" tf:"windows_configuration,omitempty"`
}

func (*OsProfileInitParameters) DeepCopy added in v0.35.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OsProfileInitParameters.

func (*OsProfileInitParameters) DeepCopyInto added in v0.35.0

func (in *OsProfileInitParameters) DeepCopyInto(out *OsProfileInitParameters)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type OsProfileObservation

type OsProfileObservation struct {

	// A linux_configuration block as documented below.
	LinuxConfiguration []LinuxConfigurationObservation `json:"linuxConfiguration,omitempty" tf:"linux_configuration,omitempty"`

	// A windows_configuration block as documented below.
	WindowsConfiguration []WindowsConfigurationObservation `json:"windowsConfiguration,omitempty" tf:"windows_configuration,omitempty"`
}

func (*OsProfileObservation) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OsProfileObservation.

func (*OsProfileObservation) DeepCopyInto

func (in *OsProfileObservation) DeepCopyInto(out *OsProfileObservation)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type OsProfileParameters

type OsProfileParameters struct {

	// The Base64-Encoded Custom Data which should be used for this Virtual Machine Scale Set.
	// +kubebuilder:validation:Optional
	CustomDataSecretRef *v1.SecretKeySelector `json:"customDataSecretRef,omitempty" tf:"-"`

	// A linux_configuration block as documented below.
	// +kubebuilder:validation:Optional
	LinuxConfiguration []LinuxConfigurationParameters `json:"linuxConfiguration,omitempty" tf:"linux_configuration,omitempty"`

	// A windows_configuration block as documented below.
	// +kubebuilder:validation:Optional
	WindowsConfiguration []WindowsConfigurationParameters `json:"windowsConfiguration,omitempty" tf:"windows_configuration,omitempty"`
}

func (*OsProfileParameters) DeepCopy

func (in *OsProfileParameters) DeepCopy() *OsProfileParameters

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OsProfileParameters.

func (*OsProfileParameters) DeepCopyInto

func (in *OsProfileParameters) DeepCopyInto(out *OsProfileParameters)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type PlanInitParameters added in v0.35.0

type PlanInitParameters struct {

	// Specifies the Name of the Marketplace Image this Virtual Machine should be created from. Changing this forces a new resource to be created.
	Name *string `json:"name,omitempty" tf:"name,omitempty"`

	// Specifies the Product of the Marketplace Image this Virtual Machine should be created from. Changing this forces a new resource to be created.
	Product *string `json:"product,omitempty" tf:"product,omitempty"`

	// Specifies the Publisher of the Marketplace Image this Virtual Machine should be created from. Changing this forces a new resource to be created.
	Publisher *string `json:"publisher,omitempty" tf:"publisher,omitempty"`
}

func (*PlanInitParameters) DeepCopy added in v0.35.0

func (in *PlanInitParameters) DeepCopy() *PlanInitParameters

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PlanInitParameters.

func (*PlanInitParameters) DeepCopyInto added in v0.35.0

func (in *PlanInitParameters) DeepCopyInto(out *PlanInitParameters)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type PlanObservation

type PlanObservation struct {

	// Specifies the Name of the Marketplace Image this Virtual Machine should be created from. Changing this forces a new resource to be created.
	Name *string `json:"name,omitempty" tf:"name,omitempty"`

	// Specifies the Product of the Marketplace Image this Virtual Machine should be created from. Changing this forces a new resource to be created.
	Product *string `json:"product,omitempty" tf:"product,omitempty"`

	// Specifies the Publisher of the Marketplace Image this Virtual Machine should be created from. Changing this forces a new resource to be created.
	Publisher *string `json:"publisher,omitempty" tf:"publisher,omitempty"`
}

func (*PlanObservation) DeepCopy

func (in *PlanObservation) DeepCopy() *PlanObservation

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PlanObservation.

func (*PlanObservation) DeepCopyInto

func (in *PlanObservation) DeepCopyInto(out *PlanObservation)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type PlanParameters

type PlanParameters struct {

	// Specifies the Name of the Marketplace Image this Virtual Machine should be created from. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	Name *string `json:"name" tf:"name,omitempty"`

	// Specifies the Product of the Marketplace Image this Virtual Machine should be created from. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	Product *string `json:"product" tf:"product,omitempty"`

	// Specifies the Publisher of the Marketplace Image this Virtual Machine should be created from. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	Publisher *string `json:"publisher" tf:"publisher,omitempty"`
}

func (*PlanParameters) DeepCopy

func (in *PlanParameters) DeepCopy() *PlanParameters

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PlanParameters.

func (*PlanParameters) DeepCopyInto

func (in *PlanParameters) DeepCopyInto(out *PlanParameters)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type PriorityMixInitParameters added in v0.35.0

type PriorityMixInitParameters struct {

	// Specifies the base number of VMs of Regular priority that will be created before any VMs of priority Spot are created. Possible values are integers between 0 and 1000. Defaults to 0.
	BaseRegularCount *float64 `json:"baseRegularCount,omitempty" tf:"base_regular_count,omitempty"`

	// Specifies the desired percentage of VM instances that are of Regular priority after the base count has been reached. Possible values are integers between 0 and 100. Defaults to 0.
	RegularPercentageAboveBase *float64 `json:"regularPercentageAboveBase,omitempty" tf:"regular_percentage_above_base,omitempty"`
}

func (*PriorityMixInitParameters) DeepCopy added in v0.35.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PriorityMixInitParameters.

func (*PriorityMixInitParameters) DeepCopyInto added in v0.35.0

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type PriorityMixObservation added in v0.32.0

type PriorityMixObservation struct {

	// Specifies the base number of VMs of Regular priority that will be created before any VMs of priority Spot are created. Possible values are integers between 0 and 1000. Defaults to 0.
	BaseRegularCount *float64 `json:"baseRegularCount,omitempty" tf:"base_regular_count,omitempty"`

	// Specifies the desired percentage of VM instances that are of Regular priority after the base count has been reached. Possible values are integers between 0 and 100. Defaults to 0.
	RegularPercentageAboveBase *float64 `json:"regularPercentageAboveBase,omitempty" tf:"regular_percentage_above_base,omitempty"`
}

func (*PriorityMixObservation) DeepCopy added in v0.32.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PriorityMixObservation.

func (*PriorityMixObservation) DeepCopyInto added in v0.32.0

func (in *PriorityMixObservation) DeepCopyInto(out *PriorityMixObservation)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type PriorityMixParameters added in v0.32.0

type PriorityMixParameters struct {

	// Specifies the base number of VMs of Regular priority that will be created before any VMs of priority Spot are created. Possible values are integers between 0 and 1000. Defaults to 0.
	// +kubebuilder:validation:Optional
	BaseRegularCount *float64 `json:"baseRegularCount,omitempty" tf:"base_regular_count,omitempty"`

	// Specifies the desired percentage of VM instances that are of Regular priority after the base count has been reached. Possible values are integers between 0 and 100. Defaults to 0.
	// +kubebuilder:validation:Optional
	RegularPercentageAboveBase *float64 `json:"regularPercentageAboveBase,omitempty" tf:"regular_percentage_above_base,omitempty"`
}

func (*PriorityMixParameters) DeepCopy added in v0.32.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PriorityMixParameters.

func (*PriorityMixParameters) DeepCopyInto added in v0.32.0

func (in *PriorityMixParameters) DeepCopyInto(out *PriorityMixParameters)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ProtectedSettingsFromKeyVaultInitParameters added in v0.35.0

type ProtectedSettingsFromKeyVaultInitParameters struct {

	// The URL to the Key Vault Secret which stores the protected settings.
	SecretURL *string `json:"secretUrl,omitempty" tf:"secret_url,omitempty"`

	// The ID of the source Key Vault.
	SourceVaultID *string `json:"sourceVaultId,omitempty" tf:"source_vault_id,omitempty"`
}

func (*ProtectedSettingsFromKeyVaultInitParameters) DeepCopy added in v0.35.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ProtectedSettingsFromKeyVaultInitParameters.

func (*ProtectedSettingsFromKeyVaultInitParameters) DeepCopyInto added in v0.35.0

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ProtectedSettingsFromKeyVaultObservation added in v0.26.0

type ProtectedSettingsFromKeyVaultObservation struct {

	// The URL to the Key Vault Secret which stores the protected settings.
	SecretURL *string `json:"secretUrl,omitempty" tf:"secret_url,omitempty"`

	// The ID of the source Key Vault.
	SourceVaultID *string `json:"sourceVaultId,omitempty" tf:"source_vault_id,omitempty"`
}

func (*ProtectedSettingsFromKeyVaultObservation) DeepCopy added in v0.26.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ProtectedSettingsFromKeyVaultObservation.

func (*ProtectedSettingsFromKeyVaultObservation) DeepCopyInto added in v0.26.0

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ProtectedSettingsFromKeyVaultParameters added in v0.26.0

type ProtectedSettingsFromKeyVaultParameters struct {

	// The URL to the Key Vault Secret which stores the protected settings.
	// +kubebuilder:validation:Optional
	SecretURL *string `json:"secretUrl" tf:"secret_url,omitempty"`

	// The ID of the source Key Vault.
	// +kubebuilder:validation:Optional
	SourceVaultID *string `json:"sourceVaultId" tf:"source_vault_id,omitempty"`
}

func (*ProtectedSettingsFromKeyVaultParameters) DeepCopy added in v0.26.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ProtectedSettingsFromKeyVaultParameters.

func (*ProtectedSettingsFromKeyVaultParameters) DeepCopyInto added in v0.26.0

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ProximityPlacementGroup

type ProximityPlacementGroup 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   ProximityPlacementGroupSpec   `json:"spec"`
	Status ProximityPlacementGroupStatus `json:"status,omitempty"`
}

ProximityPlacementGroup is the Schema for the ProximityPlacementGroups API. Manages a proximity placement group for virtual machines, virtual machine scale sets and availability sets. +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 (*ProximityPlacementGroup) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ProximityPlacementGroup.

func (*ProximityPlacementGroup) DeepCopyInto

func (in *ProximityPlacementGroup) DeepCopyInto(out *ProximityPlacementGroup)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*ProximityPlacementGroup) DeepCopyObject

func (in *ProximityPlacementGroup) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

func (*ProximityPlacementGroup) GetCondition

GetCondition of this ProximityPlacementGroup.

func (*ProximityPlacementGroup) GetConnectionDetailsMapping

func (tr *ProximityPlacementGroup) GetConnectionDetailsMapping() map[string]string

GetConnectionDetailsMapping for this ProximityPlacementGroup

func (*ProximityPlacementGroup) GetDeletionPolicy

func (mg *ProximityPlacementGroup) GetDeletionPolicy() xpv1.DeletionPolicy

GetDeletionPolicy of this ProximityPlacementGroup.

func (*ProximityPlacementGroup) GetID

func (tr *ProximityPlacementGroup) GetID() string

GetID returns ID of underlying Terraform resource of this ProximityPlacementGroup

func (*ProximityPlacementGroup) GetInitParameters added in v0.35.0

func (tr *ProximityPlacementGroup) GetInitParameters() (map[string]any, error)

GetInitParameters of this ProximityPlacementGroup

func (*ProximityPlacementGroup) GetManagementPolicies added in v0.35.0

func (mg *ProximityPlacementGroup) GetManagementPolicies() xpv1.ManagementPolicies

GetManagementPolicies of this ProximityPlacementGroup.

func (*ProximityPlacementGroup) GetMergedParameters added in v0.40.0

func (tr *ProximityPlacementGroup) GetMergedParameters(shouldMergeInitProvider bool) (map[string]any, error)

GetInitParameters of this ProximityPlacementGroup

func (*ProximityPlacementGroup) GetObservation

func (tr *ProximityPlacementGroup) GetObservation() (map[string]any, error)

GetObservation of this ProximityPlacementGroup

func (*ProximityPlacementGroup) GetParameters

func (tr *ProximityPlacementGroup) GetParameters() (map[string]any, error)

GetParameters of this ProximityPlacementGroup

func (*ProximityPlacementGroup) GetProviderConfigReference

func (mg *ProximityPlacementGroup) GetProviderConfigReference() *xpv1.Reference

GetProviderConfigReference of this ProximityPlacementGroup.

func (*ProximityPlacementGroup) GetPublishConnectionDetailsTo

func (mg *ProximityPlacementGroup) GetPublishConnectionDetailsTo() *xpv1.PublishConnectionDetailsTo

GetPublishConnectionDetailsTo of this ProximityPlacementGroup.

func (*ProximityPlacementGroup) GetTerraformResourceType

func (mg *ProximityPlacementGroup) GetTerraformResourceType() string

GetTerraformResourceType returns Terraform resource type for this ProximityPlacementGroup

func (*ProximityPlacementGroup) GetTerraformSchemaVersion

func (tr *ProximityPlacementGroup) GetTerraformSchemaVersion() int

GetTerraformSchemaVersion returns the associated Terraform schema version

func (*ProximityPlacementGroup) GetWriteConnectionSecretToReference

func (mg *ProximityPlacementGroup) GetWriteConnectionSecretToReference() *xpv1.SecretReference

GetWriteConnectionSecretToReference of this ProximityPlacementGroup.

func (*ProximityPlacementGroup) Hub added in v0.42.1

func (tr *ProximityPlacementGroup) Hub()

Hub marks this type as a conversion hub.

func (*ProximityPlacementGroup) LateInitialize

func (tr *ProximityPlacementGroup) LateInitialize(attrs []byte) (bool, error)

LateInitialize this ProximityPlacementGroup using its observed tfState. returns True if there are any spec changes for the resource.

func (*ProximityPlacementGroup) ResolveReferences

func (mg *ProximityPlacementGroup) ResolveReferences(ctx context.Context, c client.Reader) error

ResolveReferences of this ProximityPlacementGroup.

func (*ProximityPlacementGroup) SetConditions

func (mg *ProximityPlacementGroup) SetConditions(c ...xpv1.Condition)

SetConditions of this ProximityPlacementGroup.

func (*ProximityPlacementGroup) SetDeletionPolicy

func (mg *ProximityPlacementGroup) SetDeletionPolicy(r xpv1.DeletionPolicy)

SetDeletionPolicy of this ProximityPlacementGroup.

func (*ProximityPlacementGroup) SetManagementPolicies added in v0.35.0

func (mg *ProximityPlacementGroup) SetManagementPolicies(r xpv1.ManagementPolicies)

SetManagementPolicies of this ProximityPlacementGroup.

func (*ProximityPlacementGroup) SetObservation

func (tr *ProximityPlacementGroup) SetObservation(obs map[string]any) error

SetObservation for this ProximityPlacementGroup

func (*ProximityPlacementGroup) SetParameters

func (tr *ProximityPlacementGroup) SetParameters(params map[string]any) error

SetParameters for this ProximityPlacementGroup

func (*ProximityPlacementGroup) SetProviderConfigReference

func (mg *ProximityPlacementGroup) SetProviderConfigReference(r *xpv1.Reference)

SetProviderConfigReference of this ProximityPlacementGroup.

func (*ProximityPlacementGroup) SetPublishConnectionDetailsTo

func (mg *ProximityPlacementGroup) SetPublishConnectionDetailsTo(r *xpv1.PublishConnectionDetailsTo)

SetPublishConnectionDetailsTo of this ProximityPlacementGroup.

func (*ProximityPlacementGroup) SetWriteConnectionSecretToReference

func (mg *ProximityPlacementGroup) SetWriteConnectionSecretToReference(r *xpv1.SecretReference)

SetWriteConnectionSecretToReference of this ProximityPlacementGroup.

type ProximityPlacementGroupInitParameters added in v0.35.0

type ProximityPlacementGroupInitParameters struct {

	// Specifies the supported sizes of Virtual Machines that can be created in the Proximity Placement Group.
	// +listType=set
	AllowedVMSizes []*string `json:"allowedVmSizes,omitempty" tf:"allowed_vm_sizes,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"`

	// Specifies the supported zone of the Proximity Placement Group. Changing this forces a new resource to be created.
	Zone *string `json:"zone,omitempty" tf:"zone,omitempty"`
}

func (*ProximityPlacementGroupInitParameters) DeepCopy added in v0.35.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ProximityPlacementGroupInitParameters.

func (*ProximityPlacementGroupInitParameters) DeepCopyInto added in v0.35.0

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ProximityPlacementGroupList

type ProximityPlacementGroupList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	Items           []ProximityPlacementGroup `json:"items"`
}

ProximityPlacementGroupList contains a list of ProximityPlacementGroups

func (*ProximityPlacementGroupList) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ProximityPlacementGroupList.

func (*ProximityPlacementGroupList) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*ProximityPlacementGroupList) DeepCopyObject

func (in *ProximityPlacementGroupList) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

func (*ProximityPlacementGroupList) GetItems

GetItems of this ProximityPlacementGroupList.

type ProximityPlacementGroupObservation

type ProximityPlacementGroupObservation struct {

	// Specifies the supported sizes of Virtual Machines that can be created in the Proximity Placement Group.
	// +listType=set
	AllowedVMSizes []*string `json:"allowedVmSizes,omitempty" tf:"allowed_vm_sizes,omitempty"`

	// The ID of the Proximity Placement Group.
	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"`

	// The name of the resource group in which to create the availability set. 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"`

	// Specifies the supported zone of the Proximity Placement Group. Changing this forces a new resource to be created.
	Zone *string `json:"zone,omitempty" tf:"zone,omitempty"`
}

func (*ProximityPlacementGroupObservation) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ProximityPlacementGroupObservation.

func (*ProximityPlacementGroupObservation) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ProximityPlacementGroupParameters

type ProximityPlacementGroupParameters struct {

	// Specifies the supported sizes of Virtual Machines that can be created in the Proximity Placement Group.
	// +kubebuilder:validation:Optional
	// +listType=set
	AllowedVMSizes []*string `json:"allowedVmSizes,omitempty" tf:"allowed_vm_sizes,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 in which to create the availability set. 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"`

	// Specifies the supported zone of the Proximity Placement Group. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	Zone *string `json:"zone,omitempty" tf:"zone,omitempty"`
}

func (*ProximityPlacementGroupParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ProximityPlacementGroupParameters.

func (*ProximityPlacementGroupParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ProximityPlacementGroupSpec

type ProximityPlacementGroupSpec struct {
	v1.ResourceSpec `json:",inline"`
	ForProvider     ProximityPlacementGroupParameters `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 ProximityPlacementGroupInitParameters `json:"initProvider,omitempty"`
}

ProximityPlacementGroupSpec defines the desired state of ProximityPlacementGroup

func (*ProximityPlacementGroupSpec) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ProximityPlacementGroupSpec.

func (*ProximityPlacementGroupSpec) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ProximityPlacementGroupStatus

type ProximityPlacementGroupStatus struct {
	v1.ResourceStatus `json:",inline"`
	AtProvider        ProximityPlacementGroupObservation `json:"atProvider,omitempty"`
}

ProximityPlacementGroupStatus defines the observed state of ProximityPlacementGroup.

func (*ProximityPlacementGroupStatus) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ProximityPlacementGroupStatus.

func (*ProximityPlacementGroupStatus) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type PublicIPAddressIPTagInitParameters added in v0.35.0

type PublicIPAddressIPTagInitParameters struct {

	// The IP Tag associated with the Public IP, such as SQL or Storage. Changing this forces a new resource to be created.
	Tag *string `json:"tag,omitempty" tf:"tag,omitempty"`

	// The Type of IP Tag, such as FirstPartyUsage. Changing this forces a new resource to be created.
	Type *string `json:"type,omitempty" tf:"type,omitempty"`
}

func (*PublicIPAddressIPTagInitParameters) DeepCopy added in v0.35.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PublicIPAddressIPTagInitParameters.

func (*PublicIPAddressIPTagInitParameters) DeepCopyInto added in v0.35.0

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type PublicIPAddressIPTagObservation

type PublicIPAddressIPTagObservation struct {

	// The IP Tag associated with the Public IP, such as SQL or Storage. Changing this forces a new resource to be created.
	Tag *string `json:"tag,omitempty" tf:"tag,omitempty"`

	// The Type of IP Tag, such as FirstPartyUsage. Changing this forces a new resource to be created.
	Type *string `json:"type,omitempty" tf:"type,omitempty"`
}

func (*PublicIPAddressIPTagObservation) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PublicIPAddressIPTagObservation.

func (*PublicIPAddressIPTagObservation) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type PublicIPAddressIPTagParameters

type PublicIPAddressIPTagParameters struct {

	// The IP Tag associated with the Public IP, such as SQL or Storage. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	Tag *string `json:"tag" tf:"tag,omitempty"`

	// The Type of IP Tag, such as FirstPartyUsage. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	Type *string `json:"type" tf:"type,omitempty"`
}

func (*PublicIPAddressIPTagParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PublicIPAddressIPTagParameters.

func (*PublicIPAddressIPTagParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type PublicIPAddressInitParameters added in v0.35.0

type PublicIPAddressInitParameters struct {

	// The Prefix which should be used for the Domain Name Label for each Virtual Machine Instance. Azure concatenates the Domain Name Label and Virtual Machine Index to create a unique Domain Name Label for each Virtual Machine.
	DomainNameLabel *string `json:"domainNameLabel,omitempty" tf:"domain_name_label,omitempty"`

	// One or more ip_tag blocks as defined above. Changing this forces a new resource to be created.
	IPTag []IPTagInitParameters `json:"ipTag,omitempty" tf:"ip_tag,omitempty"`

	// The Idle Timeout in Minutes for the Public IP Address. Possible values are in the range 4 to 32.
	IdleTimeoutInMinutes *float64 `json:"idleTimeoutInMinutes,omitempty" tf:"idle_timeout_in_minutes,omitempty"`

	// The Name of the Public IP Address Configuration.
	Name *string `json:"name,omitempty" tf:"name,omitempty"`

	// The ID of the Public IP Address Prefix from where Public IP Addresses should be allocated. Changing this forces a new resource to be created.
	PublicIPPrefixID *string `json:"publicIpPrefixId,omitempty" tf:"public_ip_prefix_id,omitempty"`

	// Specifies the version of the image used to create the virtual machines.
	Version *string `json:"version,omitempty" tf:"version,omitempty"`
}

func (*PublicIPAddressInitParameters) DeepCopy added in v0.35.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PublicIPAddressInitParameters.

func (*PublicIPAddressInitParameters) DeepCopyInto added in v0.35.0

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type PublicIPAddressObservation

type PublicIPAddressObservation struct {

	// The Prefix which should be used for the Domain Name Label for each Virtual Machine Instance. Azure concatenates the Domain Name Label and Virtual Machine Index to create a unique Domain Name Label for each Virtual Machine.
	DomainNameLabel *string `json:"domainNameLabel,omitempty" tf:"domain_name_label,omitempty"`

	// One or more ip_tag blocks as defined above. Changing this forces a new resource to be created.
	IPTag []IPTagObservation `json:"ipTag,omitempty" tf:"ip_tag,omitempty"`

	// The Idle Timeout in Minutes for the Public IP Address. Possible values are in the range 4 to 32.
	IdleTimeoutInMinutes *float64 `json:"idleTimeoutInMinutes,omitempty" tf:"idle_timeout_in_minutes,omitempty"`

	// The Name of the Public IP Address Configuration.
	Name *string `json:"name,omitempty" tf:"name,omitempty"`

	// The ID of the Public IP Address Prefix from where Public IP Addresses should be allocated. Changing this forces a new resource to be created.
	PublicIPPrefixID *string `json:"publicIpPrefixId,omitempty" tf:"public_ip_prefix_id,omitempty"`

	// Specifies the version of the image used to create the virtual machines.
	Version *string `json:"version,omitempty" tf:"version,omitempty"`
}

func (*PublicIPAddressObservation) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PublicIPAddressObservation.

func (*PublicIPAddressObservation) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type PublicIPAddressParameters

type PublicIPAddressParameters struct {

	// The Prefix which should be used for the Domain Name Label for each Virtual Machine Instance. Azure concatenates the Domain Name Label and Virtual Machine Index to create a unique Domain Name Label for each Virtual Machine.
	// +kubebuilder:validation:Optional
	DomainNameLabel *string `json:"domainNameLabel,omitempty" tf:"domain_name_label,omitempty"`

	// One or more ip_tag blocks as defined above. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	IPTag []IPTagParameters `json:"ipTag,omitempty" tf:"ip_tag,omitempty"`

	// The Idle Timeout in Minutes for the Public IP Address. Possible values are in the range 4 to 32.
	// +kubebuilder:validation:Optional
	IdleTimeoutInMinutes *float64 `json:"idleTimeoutInMinutes,omitempty" tf:"idle_timeout_in_minutes,omitempty"`

	// The Name of the Public IP Address Configuration.
	// +kubebuilder:validation:Optional
	Name *string `json:"name" tf:"name,omitempty"`

	// The ID of the Public IP Address Prefix from where Public IP Addresses should be allocated. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	PublicIPPrefixID *string `json:"publicIpPrefixId,omitempty" tf:"public_ip_prefix_id,omitempty"`

	// Specifies the version of the image used to create the virtual machines.
	// +kubebuilder:validation:Optional
	Version *string `json:"version,omitempty" tf:"version,omitempty"`
}

func (*PublicIPAddressParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PublicIPAddressParameters.

func (*PublicIPAddressParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type PurchasePlanInitParameters added in v0.35.0

type PurchasePlanInitParameters struct {

	// The Purchase Plan Name for this Shared Image. Changing this forces a new resource to be created.
	Name *string `json:"name,omitempty" tf:"name,omitempty"`

	// The Purchase Plan Product for this Gallery Image. Changing this forces a new resource to be created.
	Product *string `json:"product,omitempty" tf:"product,omitempty"`

	// The Purchase Plan Publisher for this Gallery Image. Changing this forces a new resource to be created.
	Publisher *string `json:"publisher,omitempty" tf:"publisher,omitempty"`
}

func (*PurchasePlanInitParameters) DeepCopy added in v0.35.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PurchasePlanInitParameters.

func (*PurchasePlanInitParameters) DeepCopyInto added in v0.35.0

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type PurchasePlanObservation added in v0.28.0

type PurchasePlanObservation struct {

	// The Purchase Plan Name for this Shared Image. Changing this forces a new resource to be created.
	Name *string `json:"name,omitempty" tf:"name,omitempty"`

	// The Purchase Plan Product for this Gallery Image. Changing this forces a new resource to be created.
	Product *string `json:"product,omitempty" tf:"product,omitempty"`

	// The Purchase Plan Publisher for this Gallery Image. Changing this forces a new resource to be created.
	Publisher *string `json:"publisher,omitempty" tf:"publisher,omitempty"`
}

func (*PurchasePlanObservation) DeepCopy added in v0.28.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PurchasePlanObservation.

func (*PurchasePlanObservation) DeepCopyInto added in v0.28.0

func (in *PurchasePlanObservation) DeepCopyInto(out *PurchasePlanObservation)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type PurchasePlanParameters added in v0.28.0

type PurchasePlanParameters struct {

	// The Purchase Plan Name for this Shared Image. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	Name *string `json:"name" tf:"name,omitempty"`

	// The Purchase Plan Product for this Gallery Image. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	Product *string `json:"product,omitempty" tf:"product,omitempty"`

	// The Purchase Plan Publisher for this Gallery Image. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	Publisher *string `json:"publisher,omitempty" tf:"publisher,omitempty"`
}

func (*PurchasePlanParameters) DeepCopy added in v0.28.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PurchasePlanParameters.

func (*PurchasePlanParameters) DeepCopyInto added in v0.28.0

func (in *PurchasePlanParameters) DeepCopyInto(out *PurchasePlanParameters)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RollingUpgradePolicyInitParameters added in v0.35.0

type RollingUpgradePolicyInitParameters struct {

	// Should the Virtual Machine Scale Set ignore the Azure Zone boundaries when constructing upgrade batches? Possible values are true or false.
	CrossZoneUpgradesEnabled *bool `json:"crossZoneUpgradesEnabled,omitempty" tf:"cross_zone_upgrades_enabled,omitempty"`

	// The maximum percent of total virtual machine instances that will be upgraded simultaneously by the rolling upgrade in one batch. As this is a maximum, unhealthy instances in previous or future batches can cause the percentage of instances in a batch to decrease to ensure higher reliability.
	MaxBatchInstancePercent *float64 `json:"maxBatchInstancePercent,omitempty" tf:"max_batch_instance_percent,omitempty"`

	// The maximum percentage of the total virtual machine instances in the scale set that can be simultaneously unhealthy, either as a result of being upgraded, or by being found in an unhealthy state by the virtual machine health checks before the rolling upgrade aborts. This constraint will be checked prior to starting any batch.
	MaxUnhealthyInstancePercent *float64 `json:"maxUnhealthyInstancePercent,omitempty" tf:"max_unhealthy_instance_percent,omitempty"`

	// The maximum percentage of upgraded virtual machine instances that can be found to be in an unhealthy state. This check will happen after each batch is upgraded. If this percentage is ever exceeded, the rolling update aborts.
	MaxUnhealthyUpgradedInstancePercent *float64 `json:"maxUnhealthyUpgradedInstancePercent,omitempty" tf:"max_unhealthy_upgraded_instance_percent,omitempty"`

	// The wait time between completing the update for all virtual machines in one batch and starting the next batch. The time duration should be specified in ISO 8601 format.
	PauseTimeBetweenBatches *string `json:"pauseTimeBetweenBatches,omitempty" tf:"pause_time_between_batches,omitempty"`

	// Upgrade all unhealthy instances in a scale set before any healthy instances. Possible values are true or false.
	PrioritizeUnhealthyInstancesEnabled *bool `json:"prioritizeUnhealthyInstancesEnabled,omitempty" tf:"prioritize_unhealthy_instances_enabled,omitempty"`
}

func (*RollingUpgradePolicyInitParameters) DeepCopy added in v0.35.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RollingUpgradePolicyInitParameters.

func (*RollingUpgradePolicyInitParameters) DeepCopyInto added in v0.35.0

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RollingUpgradePolicyObservation

type RollingUpgradePolicyObservation struct {

	// Should the Virtual Machine Scale Set ignore the Azure Zone boundaries when constructing upgrade batches? Possible values are true or false.
	CrossZoneUpgradesEnabled *bool `json:"crossZoneUpgradesEnabled,omitempty" tf:"cross_zone_upgrades_enabled,omitempty"`

	// The maximum percent of total virtual machine instances that will be upgraded simultaneously by the rolling upgrade in one batch. As this is a maximum, unhealthy instances in previous or future batches can cause the percentage of instances in a batch to decrease to ensure higher reliability.
	MaxBatchInstancePercent *float64 `json:"maxBatchInstancePercent,omitempty" tf:"max_batch_instance_percent,omitempty"`

	// The maximum percentage of the total virtual machine instances in the scale set that can be simultaneously unhealthy, either as a result of being upgraded, or by being found in an unhealthy state by the virtual machine health checks before the rolling upgrade aborts. This constraint will be checked prior to starting any batch.
	MaxUnhealthyInstancePercent *float64 `json:"maxUnhealthyInstancePercent,omitempty" tf:"max_unhealthy_instance_percent,omitempty"`

	// The maximum percentage of upgraded virtual machine instances that can be found to be in an unhealthy state. This check will happen after each batch is upgraded. If this percentage is ever exceeded, the rolling update aborts.
	MaxUnhealthyUpgradedInstancePercent *float64 `json:"maxUnhealthyUpgradedInstancePercent,omitempty" tf:"max_unhealthy_upgraded_instance_percent,omitempty"`

	// The wait time between completing the update for all virtual machines in one batch and starting the next batch. The time duration should be specified in ISO 8601 format.
	PauseTimeBetweenBatches *string `json:"pauseTimeBetweenBatches,omitempty" tf:"pause_time_between_batches,omitempty"`

	// Upgrade all unhealthy instances in a scale set before any healthy instances. Possible values are true or false.
	PrioritizeUnhealthyInstancesEnabled *bool `json:"prioritizeUnhealthyInstancesEnabled,omitempty" tf:"prioritize_unhealthy_instances_enabled,omitempty"`
}

func (*RollingUpgradePolicyObservation) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RollingUpgradePolicyObservation.

func (*RollingUpgradePolicyObservation) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RollingUpgradePolicyParameters

type RollingUpgradePolicyParameters struct {

	// Should the Virtual Machine Scale Set ignore the Azure Zone boundaries when constructing upgrade batches? Possible values are true or false.
	// +kubebuilder:validation:Optional
	CrossZoneUpgradesEnabled *bool `json:"crossZoneUpgradesEnabled,omitempty" tf:"cross_zone_upgrades_enabled,omitempty"`

	// The maximum percent of total virtual machine instances that will be upgraded simultaneously by the rolling upgrade in one batch. As this is a maximum, unhealthy instances in previous or future batches can cause the percentage of instances in a batch to decrease to ensure higher reliability.
	// +kubebuilder:validation:Optional
	MaxBatchInstancePercent *float64 `json:"maxBatchInstancePercent" tf:"max_batch_instance_percent,omitempty"`

	// The maximum percentage of the total virtual machine instances in the scale set that can be simultaneously unhealthy, either as a result of being upgraded, or by being found in an unhealthy state by the virtual machine health checks before the rolling upgrade aborts. This constraint will be checked prior to starting any batch.
	// +kubebuilder:validation:Optional
	MaxUnhealthyInstancePercent *float64 `json:"maxUnhealthyInstancePercent" tf:"max_unhealthy_instance_percent,omitempty"`

	// The maximum percentage of upgraded virtual machine instances that can be found to be in an unhealthy state. This check will happen after each batch is upgraded. If this percentage is ever exceeded, the rolling update aborts.
	// +kubebuilder:validation:Optional
	MaxUnhealthyUpgradedInstancePercent *float64 `json:"maxUnhealthyUpgradedInstancePercent" tf:"max_unhealthy_upgraded_instance_percent,omitempty"`

	// The wait time between completing the update for all virtual machines in one batch and starting the next batch. The time duration should be specified in ISO 8601 format.
	// +kubebuilder:validation:Optional
	PauseTimeBetweenBatches *string `json:"pauseTimeBetweenBatches" tf:"pause_time_between_batches,omitempty"`

	// Upgrade all unhealthy instances in a scale set before any healthy instances. Possible values are true or false.
	// +kubebuilder:validation:Optional
	PrioritizeUnhealthyInstancesEnabled *bool `json:"prioritizeUnhealthyInstancesEnabled,omitempty" tf:"prioritize_unhealthy_instances_enabled,omitempty"`
}

func (*RollingUpgradePolicyParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RollingUpgradePolicyParameters.

func (*RollingUpgradePolicyParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type SSHPublicKey added in v0.28.0

type SSHPublicKey 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.publicKey) || (has(self.initProvider) && has(self.initProvider.publicKey))",message="spec.forProvider.publicKey is a required parameter"
	Spec   SSHPublicKeySpec   `json:"spec"`
	Status SSHPublicKeyStatus `json:"status,omitempty"`
}

SSHPublicKey is the Schema for the SSHPublicKeys API. Manages a SSH Public Key. +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 (*SSHPublicKey) DeepCopy added in v0.28.0

func (in *SSHPublicKey) DeepCopy() *SSHPublicKey

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SSHPublicKey.

func (*SSHPublicKey) DeepCopyInto added in v0.28.0

func (in *SSHPublicKey) DeepCopyInto(out *SSHPublicKey)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*SSHPublicKey) DeepCopyObject added in v0.28.0

func (in *SSHPublicKey) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

func (*SSHPublicKey) GetCondition added in v0.28.0

func (mg *SSHPublicKey) GetCondition(ct xpv1.ConditionType) xpv1.Condition

GetCondition of this SSHPublicKey.

func (*SSHPublicKey) GetConnectionDetailsMapping added in v0.28.0

func (tr *SSHPublicKey) GetConnectionDetailsMapping() map[string]string

GetConnectionDetailsMapping for this SSHPublicKey

func (*SSHPublicKey) GetDeletionPolicy added in v0.28.0

func (mg *SSHPublicKey) GetDeletionPolicy() xpv1.DeletionPolicy

GetDeletionPolicy of this SSHPublicKey.

func (*SSHPublicKey) GetID added in v0.28.0

func (tr *SSHPublicKey) GetID() string

GetID returns ID of underlying Terraform resource of this SSHPublicKey

func (*SSHPublicKey) GetInitParameters added in v0.35.0

func (tr *SSHPublicKey) GetInitParameters() (map[string]any, error)

GetInitParameters of this SSHPublicKey

func (*SSHPublicKey) GetManagementPolicies added in v0.35.0

func (mg *SSHPublicKey) GetManagementPolicies() xpv1.ManagementPolicies

GetManagementPolicies of this SSHPublicKey.

func (*SSHPublicKey) GetMergedParameters added in v0.40.0

func (tr *SSHPublicKey) GetMergedParameters(shouldMergeInitProvider bool) (map[string]any, error)

GetInitParameters of this SSHPublicKey

func (*SSHPublicKey) GetObservation added in v0.28.0

func (tr *SSHPublicKey) GetObservation() (map[string]any, error)

GetObservation of this SSHPublicKey

func (*SSHPublicKey) GetParameters added in v0.28.0

func (tr *SSHPublicKey) GetParameters() (map[string]any, error)

GetParameters of this SSHPublicKey

func (*SSHPublicKey) GetProviderConfigReference added in v0.28.0

func (mg *SSHPublicKey) GetProviderConfigReference() *xpv1.Reference

GetProviderConfigReference of this SSHPublicKey.

func (*SSHPublicKey) GetPublishConnectionDetailsTo added in v0.28.0

func (mg *SSHPublicKey) GetPublishConnectionDetailsTo() *xpv1.PublishConnectionDetailsTo

GetPublishConnectionDetailsTo of this SSHPublicKey.

func (*SSHPublicKey) GetTerraformResourceType added in v0.28.0

func (mg *SSHPublicKey) GetTerraformResourceType() string

GetTerraformResourceType returns Terraform resource type for this SSHPublicKey

func (*SSHPublicKey) GetTerraformSchemaVersion added in v0.28.0

func (tr *SSHPublicKey) GetTerraformSchemaVersion() int

GetTerraformSchemaVersion returns the associated Terraform schema version

func (*SSHPublicKey) GetWriteConnectionSecretToReference added in v0.28.0

func (mg *SSHPublicKey) GetWriteConnectionSecretToReference() *xpv1.SecretReference

GetWriteConnectionSecretToReference of this SSHPublicKey.

func (*SSHPublicKey) Hub added in v0.42.1

func (tr *SSHPublicKey) Hub()

Hub marks this type as a conversion hub.

func (*SSHPublicKey) LateInitialize added in v0.28.0

func (tr *SSHPublicKey) LateInitialize(attrs []byte) (bool, error)

LateInitialize this SSHPublicKey using its observed tfState. returns True if there are any spec changes for the resource.

func (*SSHPublicKey) ResolveReferences added in v0.28.0

func (mg *SSHPublicKey) ResolveReferences(ctx context.Context, c client.Reader) error

ResolveReferences of this SSHPublicKey.

func (*SSHPublicKey) SetConditions added in v0.28.0

func (mg *SSHPublicKey) SetConditions(c ...xpv1.Condition)

SetConditions of this SSHPublicKey.

func (*SSHPublicKey) SetDeletionPolicy added in v0.28.0

func (mg *SSHPublicKey) SetDeletionPolicy(r xpv1.DeletionPolicy)

SetDeletionPolicy of this SSHPublicKey.

func (*SSHPublicKey) SetManagementPolicies added in v0.35.0

func (mg *SSHPublicKey) SetManagementPolicies(r xpv1.ManagementPolicies)

SetManagementPolicies of this SSHPublicKey.

func (*SSHPublicKey) SetObservation added in v0.28.0

func (tr *SSHPublicKey) SetObservation(obs map[string]any) error

SetObservation for this SSHPublicKey

func (*SSHPublicKey) SetParameters added in v0.28.0

func (tr *SSHPublicKey) SetParameters(params map[string]any) error

SetParameters for this SSHPublicKey

func (*SSHPublicKey) SetProviderConfigReference added in v0.28.0

func (mg *SSHPublicKey) SetProviderConfigReference(r *xpv1.Reference)

SetProviderConfigReference of this SSHPublicKey.

func (*SSHPublicKey) SetPublishConnectionDetailsTo added in v0.28.0

func (mg *SSHPublicKey) SetPublishConnectionDetailsTo(r *xpv1.PublishConnectionDetailsTo)

SetPublishConnectionDetailsTo of this SSHPublicKey.

func (*SSHPublicKey) SetWriteConnectionSecretToReference added in v0.28.0

func (mg *SSHPublicKey) SetWriteConnectionSecretToReference(r *xpv1.SecretReference)

SetWriteConnectionSecretToReference of this SSHPublicKey.

type SSHPublicKeyInitParameters added in v0.35.0

type SSHPublicKeyInitParameters struct {

	// The Azure Region where the SSH Public Key should exist. Changing this forces a new SSH Public Key to be created.
	Location *string `json:"location,omitempty" tf:"location,omitempty"`

	// SSH public key used to authenticate to a virtual machine through ssh. the provided public key needs to be at least 2048-bit and in ssh-rsa format.
	PublicKey *string `json:"publicKey,omitempty" tf:"public_key,omitempty"`

	// A mapping of tags which should be assigned to the SSH Public Key.
	// +mapType=granular
	Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"`
}

func (*SSHPublicKeyInitParameters) DeepCopy added in v0.35.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SSHPublicKeyInitParameters.

func (*SSHPublicKeyInitParameters) DeepCopyInto added in v0.35.0

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type SSHPublicKeyList added in v0.28.0

type SSHPublicKeyList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	Items           []SSHPublicKey `json:"items"`
}

SSHPublicKeyList contains a list of SSHPublicKeys

func (*SSHPublicKeyList) DeepCopy added in v0.28.0

func (in *SSHPublicKeyList) DeepCopy() *SSHPublicKeyList

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SSHPublicKeyList.

func (*SSHPublicKeyList) DeepCopyInto added in v0.28.0

func (in *SSHPublicKeyList) DeepCopyInto(out *SSHPublicKeyList)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*SSHPublicKeyList) DeepCopyObject added in v0.28.0

func (in *SSHPublicKeyList) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

func (*SSHPublicKeyList) GetItems added in v0.28.0

func (l *SSHPublicKeyList) GetItems() []resource.Managed

GetItems of this SSHPublicKeyList.

type SSHPublicKeyObservation added in v0.28.0

type SSHPublicKeyObservation struct {

	// The ID of the SSH Public Key.
	ID *string `json:"id,omitempty" tf:"id,omitempty"`

	// The Azure Region where the SSH Public Key should exist. Changing this forces a new SSH Public Key to be created.
	Location *string `json:"location,omitempty" tf:"location,omitempty"`

	// SSH public key used to authenticate to a virtual machine through ssh. the provided public key needs to be at least 2048-bit and in ssh-rsa format.
	PublicKey *string `json:"publicKey,omitempty" tf:"public_key,omitempty"`

	// The name of the Resource Group where the SSH Public Key should exist. Changing this forces a new SSH Public Key to be created.
	ResourceGroupName *string `json:"resourceGroupName,omitempty" tf:"resource_group_name,omitempty"`

	// A mapping of tags which should be assigned to the SSH Public Key.
	// +mapType=granular
	Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"`
}

func (*SSHPublicKeyObservation) DeepCopy added in v0.28.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SSHPublicKeyObservation.

func (*SSHPublicKeyObservation) DeepCopyInto added in v0.28.0

func (in *SSHPublicKeyObservation) DeepCopyInto(out *SSHPublicKeyObservation)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type SSHPublicKeyParameters added in v0.28.0

type SSHPublicKeyParameters struct {

	// The Azure Region where the SSH Public Key should exist. Changing this forces a new SSH Public Key to be created.
	// +kubebuilder:validation:Optional
	Location *string `json:"location,omitempty" tf:"location,omitempty"`

	// SSH public key used to authenticate to a virtual machine through ssh. the provided public key needs to be at least 2048-bit and in ssh-rsa format.
	// +kubebuilder:validation:Optional
	PublicKey *string `json:"publicKey,omitempty" tf:"public_key,omitempty"`

	// The name of the Resource Group where the SSH Public Key should exist. Changing this forces a new SSH Public Key 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 which should be assigned to the SSH Public Key.
	// +kubebuilder:validation:Optional
	// +mapType=granular
	Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"`
}

func (*SSHPublicKeyParameters) DeepCopy added in v0.28.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SSHPublicKeyParameters.

func (*SSHPublicKeyParameters) DeepCopyInto added in v0.28.0

func (in *SSHPublicKeyParameters) DeepCopyInto(out *SSHPublicKeyParameters)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type SSHPublicKeySpec added in v0.28.0

type SSHPublicKeySpec struct {
	v1.ResourceSpec `json:",inline"`
	ForProvider     SSHPublicKeyParameters `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 SSHPublicKeyInitParameters `json:"initProvider,omitempty"`
}

SSHPublicKeySpec defines the desired state of SSHPublicKey

func (*SSHPublicKeySpec) DeepCopy added in v0.28.0

func (in *SSHPublicKeySpec) DeepCopy() *SSHPublicKeySpec

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SSHPublicKeySpec.

func (*SSHPublicKeySpec) DeepCopyInto added in v0.28.0

func (in *SSHPublicKeySpec) DeepCopyInto(out *SSHPublicKeySpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type SSHPublicKeyStatus added in v0.28.0

type SSHPublicKeyStatus struct {
	v1.ResourceStatus `json:",inline"`
	AtProvider        SSHPublicKeyObservation `json:"atProvider,omitempty"`
}

SSHPublicKeyStatus defines the observed state of SSHPublicKey.

func (*SSHPublicKeyStatus) DeepCopy added in v0.28.0

func (in *SSHPublicKeyStatus) DeepCopy() *SSHPublicKeyStatus

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SSHPublicKeyStatus.

func (*SSHPublicKeyStatus) DeepCopyInto added in v0.28.0

func (in *SSHPublicKeyStatus) DeepCopyInto(out *SSHPublicKeyStatus)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ScaleInInitParameters added in v0.35.0

type ScaleInInitParameters struct {

	// Should the virtual machines chosen for removal be force deleted when the virtual machine scale set is being scaled-in? Possible values are true or false. Defaults to false.
	ForceDeletionEnabled *bool `json:"forceDeletionEnabled,omitempty" tf:"force_deletion_enabled,omitempty"`

	// The scale-in policy rule that decides which virtual machines are chosen for removal when a Virtual Machine Scale Set is scaled in. Possible values for the scale-in policy rules are Default, NewestVM and OldestVM, defaults to Default. For more information about scale in policy, please refer to this doc.
	Rule *string `json:"rule,omitempty" tf:"rule,omitempty"`
}

func (*ScaleInInitParameters) DeepCopy added in v0.35.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ScaleInInitParameters.

func (*ScaleInInitParameters) DeepCopyInto added in v0.35.0

func (in *ScaleInInitParameters) DeepCopyInto(out *ScaleInInitParameters)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ScaleInObservation added in v0.26.0

type ScaleInObservation struct {

	// Should the virtual machines chosen for removal be force deleted when the virtual machine scale set is being scaled-in? Possible values are true or false. Defaults to false.
	ForceDeletionEnabled *bool `json:"forceDeletionEnabled,omitempty" tf:"force_deletion_enabled,omitempty"`

	// The scale-in policy rule that decides which virtual machines are chosen for removal when a Virtual Machine Scale Set is scaled in. Possible values for the scale-in policy rules are Default, NewestVM and OldestVM, defaults to Default. For more information about scale in policy, please refer to this doc.
	Rule *string `json:"rule,omitempty" tf:"rule,omitempty"`
}

func (*ScaleInObservation) DeepCopy added in v0.26.0

func (in *ScaleInObservation) DeepCopy() *ScaleInObservation

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ScaleInObservation.

func (*ScaleInObservation) DeepCopyInto added in v0.26.0

func (in *ScaleInObservation) DeepCopyInto(out *ScaleInObservation)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ScaleInParameters added in v0.26.0

type ScaleInParameters struct {

	// Should the virtual machines chosen for removal be force deleted when the virtual machine scale set is being scaled-in? Possible values are true or false. Defaults to false.
	// +kubebuilder:validation:Optional
	ForceDeletionEnabled *bool `json:"forceDeletionEnabled,omitempty" tf:"force_deletion_enabled,omitempty"`

	// The scale-in policy rule that decides which virtual machines are chosen for removal when a Virtual Machine Scale Set is scaled in. Possible values for the scale-in policy rules are Default, NewestVM and OldestVM, defaults to Default. For more information about scale in policy, please refer to this doc.
	// +kubebuilder:validation:Optional
	Rule *string `json:"rule,omitempty" tf:"rule,omitempty"`
}

func (*ScaleInParameters) DeepCopy added in v0.26.0

func (in *ScaleInParameters) DeepCopy() *ScaleInParameters

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ScaleInParameters.

func (*ScaleInParameters) DeepCopyInto added in v0.26.0

func (in *ScaleInParameters) DeepCopyInto(out *ScaleInParameters)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type SecretCertificateInitParameters added in v0.35.0

type SecretCertificateInitParameters struct {

	// The Secret URL of a Key Vault Certificate.
	URL *string `json:"url,omitempty" tf:"url,omitempty"`
}

func (*SecretCertificateInitParameters) DeepCopy added in v0.35.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SecretCertificateInitParameters.

func (*SecretCertificateInitParameters) DeepCopyInto added in v0.35.0

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type SecretCertificateObservation

type SecretCertificateObservation struct {

	// The Secret URL of a Key Vault Certificate.
	URL *string `json:"url,omitempty" tf:"url,omitempty"`
}

func (*SecretCertificateObservation) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SecretCertificateObservation.

func (*SecretCertificateObservation) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type SecretCertificateParameters

type SecretCertificateParameters struct {

	// The Secret URL of a Key Vault Certificate.
	// +kubebuilder:validation:Optional
	URL *string `json:"url" tf:"url,omitempty"`
}

func (*SecretCertificateParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SecretCertificateParameters.

func (*SecretCertificateParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type SecretInitParameters added in v0.35.0

type SecretInitParameters struct {

	// One or more certificate blocks as defined above.
	Certificate []CertificateInitParameters `json:"certificate,omitempty" tf:"certificate,omitempty"`

	// The ID of the Key Vault from which all Secrets should be sourced.
	KeyVaultID *string `json:"keyVaultId,omitempty" tf:"key_vault_id,omitempty"`
}

func (*SecretInitParameters) DeepCopy added in v0.35.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SecretInitParameters.

func (*SecretInitParameters) DeepCopyInto added in v0.35.0

func (in *SecretInitParameters) DeepCopyInto(out *SecretInitParameters)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type SecretObservation

type SecretObservation struct {

	// One or more certificate blocks as defined above.
	Certificate []CertificateObservation `json:"certificate,omitempty" tf:"certificate,omitempty"`

	// The ID of the Key Vault from which all Secrets should be sourced.
	KeyVaultID *string `json:"keyVaultId,omitempty" tf:"key_vault_id,omitempty"`
}

func (*SecretObservation) DeepCopy

func (in *SecretObservation) DeepCopy() *SecretObservation

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SecretObservation.

func (*SecretObservation) DeepCopyInto

func (in *SecretObservation) DeepCopyInto(out *SecretObservation)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type SecretParameters

type SecretParameters struct {

	// One or more certificate blocks as defined above.
	// +kubebuilder:validation:Optional
	Certificate []CertificateParameters `json:"certificate" tf:"certificate,omitempty"`

	// The ID of the Key Vault from which all Secrets should be sourced.
	// +kubebuilder:validation:Optional
	KeyVaultID *string `json:"keyVaultId" tf:"key_vault_id,omitempty"`
}

func (*SecretParameters) DeepCopy

func (in *SecretParameters) DeepCopy() *SecretParameters

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SecretParameters.

func (*SecretParameters) DeepCopyInto

func (in *SecretParameters) DeepCopyInto(out *SecretParameters)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type SharedImage added in v0.28.0

type SharedImage 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.identifier) || (has(self.initProvider) && has(self.initProvider.identifier))",message="spec.forProvider.identifier is a required parameter"
	// +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || (has(self.initProvider) && has(self.initProvider.location))",message="spec.forProvider.location is a required parameter"
	// +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.osType) || (has(self.initProvider) && has(self.initProvider.osType))",message="spec.forProvider.osType is a required parameter"
	Spec   SharedImageSpec   `json:"spec"`
	Status SharedImageStatus `json:"status,omitempty"`
}

SharedImage is the Schema for the SharedImages API. Manages a Shared Image within a Shared Image Gallery. +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 (*SharedImage) DeepCopy added in v0.28.0

func (in *SharedImage) DeepCopy() *SharedImage

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SharedImage.

func (*SharedImage) DeepCopyInto added in v0.28.0

func (in *SharedImage) DeepCopyInto(out *SharedImage)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*SharedImage) DeepCopyObject added in v0.28.0

func (in *SharedImage) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

func (*SharedImage) GetCondition added in v0.28.0

func (mg *SharedImage) GetCondition(ct xpv1.ConditionType) xpv1.Condition

GetCondition of this SharedImage.

func (*SharedImage) GetConnectionDetailsMapping added in v0.28.0

func (tr *SharedImage) GetConnectionDetailsMapping() map[string]string

GetConnectionDetailsMapping for this SharedImage

func (*SharedImage) GetDeletionPolicy added in v0.28.0

func (mg *SharedImage) GetDeletionPolicy() xpv1.DeletionPolicy

GetDeletionPolicy of this SharedImage.

func (*SharedImage) GetID added in v0.28.0

func (tr *SharedImage) GetID() string

GetID returns ID of underlying Terraform resource of this SharedImage

func (*SharedImage) GetInitParameters added in v0.35.0

func (tr *SharedImage) GetInitParameters() (map[string]any, error)

GetInitParameters of this SharedImage

func (*SharedImage) GetManagementPolicies added in v0.35.0

func (mg *SharedImage) GetManagementPolicies() xpv1.ManagementPolicies

GetManagementPolicies of this SharedImage.

func (*SharedImage) GetMergedParameters added in v0.40.0

func (tr *SharedImage) GetMergedParameters(shouldMergeInitProvider bool) (map[string]any, error)

GetInitParameters of this SharedImage

func (*SharedImage) GetObservation added in v0.28.0

func (tr *SharedImage) GetObservation() (map[string]any, error)

GetObservation of this SharedImage

func (*SharedImage) GetParameters added in v0.28.0

func (tr *SharedImage) GetParameters() (map[string]any, error)

GetParameters of this SharedImage

func (*SharedImage) GetProviderConfigReference added in v0.28.0

func (mg *SharedImage) GetProviderConfigReference() *xpv1.Reference

GetProviderConfigReference of this SharedImage.

func (*SharedImage) GetPublishConnectionDetailsTo added in v0.28.0

func (mg *SharedImage) GetPublishConnectionDetailsTo() *xpv1.PublishConnectionDetailsTo

GetPublishConnectionDetailsTo of this SharedImage.

func (*SharedImage) GetTerraformResourceType added in v0.28.0

func (mg *SharedImage) GetTerraformResourceType() string

GetTerraformResourceType returns Terraform resource type for this SharedImage

func (*SharedImage) GetTerraformSchemaVersion added in v0.28.0

func (tr *SharedImage) GetTerraformSchemaVersion() int

GetTerraformSchemaVersion returns the associated Terraform schema version

func (*SharedImage) GetWriteConnectionSecretToReference added in v0.28.0

func (mg *SharedImage) GetWriteConnectionSecretToReference() *xpv1.SecretReference

GetWriteConnectionSecretToReference of this SharedImage.

func (*SharedImage) Hub added in v0.42.1

func (tr *SharedImage) Hub()

Hub marks this type as a conversion hub.

func (*SharedImage) LateInitialize added in v0.28.0

func (tr *SharedImage) LateInitialize(attrs []byte) (bool, error)

LateInitialize this SharedImage using its observed tfState. returns True if there are any spec changes for the resource.

func (*SharedImage) ResolveReferences added in v0.28.0

func (mg *SharedImage) ResolveReferences(ctx context.Context, c client.Reader) error

ResolveReferences of this SharedImage.

func (*SharedImage) SetConditions added in v0.28.0

func (mg *SharedImage) SetConditions(c ...xpv1.Condition)

SetConditions of this SharedImage.

func (*SharedImage) SetDeletionPolicy added in v0.28.0

func (mg *SharedImage) SetDeletionPolicy(r xpv1.DeletionPolicy)

SetDeletionPolicy of this SharedImage.

func (*SharedImage) SetManagementPolicies added in v0.35.0

func (mg *SharedImage) SetManagementPolicies(r xpv1.ManagementPolicies)

SetManagementPolicies of this SharedImage.

func (*SharedImage) SetObservation added in v0.28.0

func (tr *SharedImage) SetObservation(obs map[string]any) error

SetObservation for this SharedImage

func (*SharedImage) SetParameters added in v0.28.0

func (tr *SharedImage) SetParameters(params map[string]any) error

SetParameters for this SharedImage

func (*SharedImage) SetProviderConfigReference added in v0.28.0

func (mg *SharedImage) SetProviderConfigReference(r *xpv1.Reference)

SetProviderConfigReference of this SharedImage.

func (*SharedImage) SetPublishConnectionDetailsTo added in v0.28.0

func (mg *SharedImage) SetPublishConnectionDetailsTo(r *xpv1.PublishConnectionDetailsTo)

SetPublishConnectionDetailsTo of this SharedImage.

func (*SharedImage) SetWriteConnectionSecretToReference added in v0.28.0

func (mg *SharedImage) SetWriteConnectionSecretToReference(r *xpv1.SecretReference)

SetWriteConnectionSecretToReference of this SharedImage.

type SharedImageGallery

type SharedImageGallery 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   SharedImageGallerySpec   `json:"spec"`
	Status SharedImageGalleryStatus `json:"status,omitempty"`
}

SharedImageGallery is the Schema for the SharedImageGallerys API. Manages a Shared Image Gallery. +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 (*SharedImageGallery) DeepCopy

func (in *SharedImageGallery) DeepCopy() *SharedImageGallery

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SharedImageGallery.

func (*SharedImageGallery) DeepCopyInto

func (in *SharedImageGallery) DeepCopyInto(out *SharedImageGallery)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*SharedImageGallery) DeepCopyObject

func (in *SharedImageGallery) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

func (*SharedImageGallery) GetCondition

func (mg *SharedImageGallery) GetCondition(ct xpv1.ConditionType) xpv1.Condition

GetCondition of this SharedImageGallery.

func (*SharedImageGallery) GetConnectionDetailsMapping

func (tr *SharedImageGallery) GetConnectionDetailsMapping() map[string]string

GetConnectionDetailsMapping for this SharedImageGallery

func (*SharedImageGallery) GetDeletionPolicy

func (mg *SharedImageGallery) GetDeletionPolicy() xpv1.DeletionPolicy

GetDeletionPolicy of this SharedImageGallery.

func (*SharedImageGallery) GetID

func (tr *SharedImageGallery) GetID() string

GetID returns ID of underlying Terraform resource of this SharedImageGallery

func (*SharedImageGallery) GetInitParameters added in v0.35.0

func (tr *SharedImageGallery) GetInitParameters() (map[string]any, error)

GetInitParameters of this SharedImageGallery

func (*SharedImageGallery) GetManagementPolicies added in v0.35.0

func (mg *SharedImageGallery) GetManagementPolicies() xpv1.ManagementPolicies

GetManagementPolicies of this SharedImageGallery.

func (*SharedImageGallery) GetMergedParameters added in v0.40.0

func (tr *SharedImageGallery) GetMergedParameters(shouldMergeInitProvider bool) (map[string]any, error)

GetInitParameters of this SharedImageGallery

func (*SharedImageGallery) GetObservation

func (tr *SharedImageGallery) GetObservation() (map[string]any, error)

GetObservation of this SharedImageGallery

func (*SharedImageGallery) GetParameters

func (tr *SharedImageGallery) GetParameters() (map[string]any, error)

GetParameters of this SharedImageGallery

func (*SharedImageGallery) GetProviderConfigReference

func (mg *SharedImageGallery) GetProviderConfigReference() *xpv1.Reference

GetProviderConfigReference of this SharedImageGallery.

func (*SharedImageGallery) GetPublishConnectionDetailsTo

func (mg *SharedImageGallery) GetPublishConnectionDetailsTo() *xpv1.PublishConnectionDetailsTo

GetPublishConnectionDetailsTo of this SharedImageGallery.

func (*SharedImageGallery) GetTerraformResourceType

func (mg *SharedImageGallery) GetTerraformResourceType() string

GetTerraformResourceType returns Terraform resource type for this SharedImageGallery

func (*SharedImageGallery) GetTerraformSchemaVersion

func (tr *SharedImageGallery) GetTerraformSchemaVersion() int

GetTerraformSchemaVersion returns the associated Terraform schema version

func (*SharedImageGallery) GetWriteConnectionSecretToReference

func (mg *SharedImageGallery) GetWriteConnectionSecretToReference() *xpv1.SecretReference

GetWriteConnectionSecretToReference of this SharedImageGallery.

func (*SharedImageGallery) Hub added in v0.42.1

func (tr *SharedImageGallery) Hub()

Hub marks this type as a conversion hub.

func (*SharedImageGallery) LateInitialize

func (tr *SharedImageGallery) LateInitialize(attrs []byte) (bool, error)

LateInitialize this SharedImageGallery using its observed tfState. returns True if there are any spec changes for the resource.

func (*SharedImageGallery) ResolveReferences

func (mg *SharedImageGallery) ResolveReferences(ctx context.Context, c client.Reader) error

ResolveReferences of this SharedImageGallery.

func (*SharedImageGallery) SetConditions

func (mg *SharedImageGallery) SetConditions(c ...xpv1.Condition)

SetConditions of this SharedImageGallery.

func (*SharedImageGallery) SetDeletionPolicy

func (mg *SharedImageGallery) SetDeletionPolicy(r xpv1.DeletionPolicy)

SetDeletionPolicy of this SharedImageGallery.

func (*SharedImageGallery) SetManagementPolicies added in v0.35.0

func (mg *SharedImageGallery) SetManagementPolicies(r xpv1.ManagementPolicies)

SetManagementPolicies of this SharedImageGallery.

func (*SharedImageGallery) SetObservation

func (tr *SharedImageGallery) SetObservation(obs map[string]any) error

SetObservation for this SharedImageGallery

func (*SharedImageGallery) SetParameters

func (tr *SharedImageGallery) SetParameters(params map[string]any) error

SetParameters for this SharedImageGallery

func (*SharedImageGallery) SetProviderConfigReference

func (mg *SharedImageGallery) SetProviderConfigReference(r *xpv1.Reference)

SetProviderConfigReference of this SharedImageGallery.

func (*SharedImageGallery) SetPublishConnectionDetailsTo

func (mg *SharedImageGallery) SetPublishConnectionDetailsTo(r *xpv1.PublishConnectionDetailsTo)

SetPublishConnectionDetailsTo of this SharedImageGallery.

func (*SharedImageGallery) SetWriteConnectionSecretToReference

func (mg *SharedImageGallery) SetWriteConnectionSecretToReference(r *xpv1.SecretReference)

SetWriteConnectionSecretToReference of this SharedImageGallery.

type SharedImageGalleryInitParameters added in v0.35.0

type SharedImageGalleryInitParameters struct {

	// A description for this Shared Image Gallery.
	Description *string `json:"description,omitempty" tf:"description,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 sharing block as defined below. Changing this forces a new resource to be created.
	Sharing []SharingInitParameters `json:"sharing,omitempty" tf:"sharing,omitempty"`

	// A mapping of tags to assign to the Shared Image Gallery.
	// +mapType=granular
	Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"`
}

func (*SharedImageGalleryInitParameters) DeepCopy added in v0.35.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SharedImageGalleryInitParameters.

func (*SharedImageGalleryInitParameters) DeepCopyInto added in v0.35.0

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type SharedImageGalleryList

type SharedImageGalleryList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	Items           []SharedImageGallery `json:"items"`
}

SharedImageGalleryList contains a list of SharedImageGallerys

func (*SharedImageGalleryList) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SharedImageGalleryList.

func (*SharedImageGalleryList) DeepCopyInto

func (in *SharedImageGalleryList) DeepCopyInto(out *SharedImageGalleryList)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*SharedImageGalleryList) DeepCopyObject

func (in *SharedImageGalleryList) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

func (*SharedImageGalleryList) GetItems

func (l *SharedImageGalleryList) GetItems() []resource.Managed

GetItems of this SharedImageGalleryList.

type SharedImageGalleryObservation

type SharedImageGalleryObservation struct {

	// A description for this Shared Image Gallery.
	Description *string `json:"description,omitempty" tf:"description,omitempty"`

	// The ID of the Shared Image Gallery.
	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"`

	// The name of the resource group in which to create the Shared Image Gallery. Changing this forces a new resource to be created.
	ResourceGroupName *string `json:"resourceGroupName,omitempty" tf:"resource_group_name,omitempty"`

	// A sharing block as defined below. Changing this forces a new resource to be created.
	Sharing []SharingObservation `json:"sharing,omitempty" tf:"sharing,omitempty"`

	// A mapping of tags to assign to the Shared Image Gallery.
	// +mapType=granular
	Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"`

	// The Unique Name for this Shared Image Gallery.
	UniqueName *string `json:"uniqueName,omitempty" tf:"unique_name,omitempty"`
}

func (*SharedImageGalleryObservation) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SharedImageGalleryObservation.

func (*SharedImageGalleryObservation) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type SharedImageGalleryParameters

type SharedImageGalleryParameters struct {

	// A description for this Shared Image Gallery.
	// +kubebuilder:validation:Optional
	Description *string `json:"description,omitempty" tf:"description,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 in which to create the Shared Image Gallery. 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 sharing block as defined below. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	Sharing []SharingParameters `json:"sharing,omitempty" tf:"sharing,omitempty"`

	// A mapping of tags to assign to the Shared Image Gallery.
	// +kubebuilder:validation:Optional
	// +mapType=granular
	Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"`
}

func (*SharedImageGalleryParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SharedImageGalleryParameters.

func (*SharedImageGalleryParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type SharedImageGallerySpec

type SharedImageGallerySpec struct {
	v1.ResourceSpec `json:",inline"`
	ForProvider     SharedImageGalleryParameters `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 SharedImageGalleryInitParameters `json:"initProvider,omitempty"`
}

SharedImageGallerySpec defines the desired state of SharedImageGallery

func (*SharedImageGallerySpec) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SharedImageGallerySpec.

func (*SharedImageGallerySpec) DeepCopyInto

func (in *SharedImageGallerySpec) DeepCopyInto(out *SharedImageGallerySpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type SharedImageGalleryStatus

type SharedImageGalleryStatus struct {
	v1.ResourceStatus `json:",inline"`
	AtProvider        SharedImageGalleryObservation `json:"atProvider,omitempty"`
}

SharedImageGalleryStatus defines the observed state of SharedImageGallery.

func (*SharedImageGalleryStatus) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SharedImageGalleryStatus.

func (*SharedImageGalleryStatus) DeepCopyInto

func (in *SharedImageGalleryStatus) DeepCopyInto(out *SharedImageGalleryStatus)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type SharedImageInitParameters added in v0.35.0

type SharedImageInitParameters struct {

	// Specifies if the Shared Image supports Accelerated Network. Changing this forces a new resource to be created.
	AcceleratedNetworkSupportEnabled *bool `json:"acceleratedNetworkSupportEnabled,omitempty" tf:"accelerated_network_support_enabled,omitempty"`

	// CPU architecture supported by an OS. Possible values are x64 and Arm64. Defaults to x64. Changing this forces a new resource to be created.
	Architecture *string `json:"architecture,omitempty" tf:"architecture,omitempty"`

	// Specifies if Confidential Virtual Machines enabled. It will enable all the features of trusted, with higher confidentiality features for isolate machines or encrypted data. Available for Gen2 machines. Changing this forces a new resource to be created.
	ConfidentialVMEnabled *bool `json:"confidentialVmEnabled,omitempty" tf:"confidential_vm_enabled,omitempty"`

	// Specifies if supports creation of both Confidential virtual machines and Gen2 virtual machines with standard security from a compatible Gen2 OS disk VHD or Gen2 Managed image. Changing this forces a new resource to be created.
	ConfidentialVMSupported *bool `json:"confidentialVmSupported,omitempty" tf:"confidential_vm_supported,omitempty"`

	// A description of this Shared Image.
	Description *string `json:"description,omitempty" tf:"description,omitempty"`

	// One or more Disk Types not allowed for the Image. Possible values include Standard_LRS and Premium_LRS.
	// +listType=set
	DiskTypesNotAllowed []*string `json:"diskTypesNotAllowed,omitempty" tf:"disk_types_not_allowed,omitempty"`

	// The end of life date in RFC3339 format of the Image.
	EndOfLifeDate *string `json:"endOfLifeDate,omitempty" tf:"end_of_life_date,omitempty"`

	// The End User Licence Agreement for the Shared Image. Changing this forces a new resource to be created.
	Eula *string `json:"eula,omitempty" tf:"eula,omitempty"`

	// The generation of HyperV that the Virtual Machine used to create the Shared Image is based on. Possible values are V1 and V2. Defaults to V1. Changing this forces a new resource to be created.
	HyperVGeneration *string `json:"hyperVGeneration,omitempty" tf:"hyper_v_generation,omitempty"`

	// An identifier block as defined below.
	Identifier []IdentifierInitParameters `json:"identifier,omitempty" tf:"identifier,omitempty"`

	// Specifies the supported Azure location where the Shared Image Gallery exists. Changing this forces a new resource to be created.
	Location *string `json:"location,omitempty" tf:"location,omitempty"`

	// Maximum memory in GB recommended for the Image.
	MaxRecommendedMemoryInGb *float64 `json:"maxRecommendedMemoryInGb,omitempty" tf:"max_recommended_memory_in_gb,omitempty"`

	// Maximum count of vCPUs recommended for the Image.
	MaxRecommendedVcpuCount *float64 `json:"maxRecommendedVcpuCount,omitempty" tf:"max_recommended_vcpu_count,omitempty"`

	// Minimum memory in GB recommended for the Image.
	MinRecommendedMemoryInGb *float64 `json:"minRecommendedMemoryInGb,omitempty" tf:"min_recommended_memory_in_gb,omitempty"`

	// Minimum count of vCPUs recommended for the Image.
	MinRecommendedVcpuCount *float64 `json:"minRecommendedVcpuCount,omitempty" tf:"min_recommended_vcpu_count,omitempty"`

	// The type of Operating System present in this Shared Image. Possible values are Linux and Windows. Changing this forces a new resource to be created.
	OsType *string `json:"osType,omitempty" tf:"os_type,omitempty"`

	// The URI containing the Privacy Statement associated with this Shared Image. Changing this forces a new resource to be created.
	PrivacyStatementURI *string `json:"privacyStatementUri,omitempty" tf:"privacy_statement_uri,omitempty"`

	// A purchase_plan block as defined below.
	PurchasePlan []PurchasePlanInitParameters `json:"purchasePlan,omitempty" tf:"purchase_plan,omitempty"`

	// The URI containing the Release Notes associated with this Shared Image.
	ReleaseNoteURI *string `json:"releaseNoteUri,omitempty" tf:"release_note_uri,omitempty"`

	// Specifies that the Operating System used inside this Image has not been Generalized (for example, sysprep on Windows has not been run). Changing this forces a new resource to be created.
	Specialized *bool `json:"specialized,omitempty" tf:"specialized,omitempty"`

	// A mapping of tags to assign to the Shared Image.
	// +mapType=granular
	Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"`

	// Specifies if Trusted Launch has to be enabled for the Virtual Machine created from the Shared Image. Changing this forces a new resource to be created.
	TrustedLaunchEnabled *bool `json:"trustedLaunchEnabled,omitempty" tf:"trusted_launch_enabled,omitempty"`

	// Specifies if supports creation of both Trusted Launch virtual machines and Gen2 virtual machines with standard security created from the Shared Image. Changing this forces a new resource to be created.
	TrustedLaunchSupported *bool `json:"trustedLaunchSupported,omitempty" tf:"trusted_launch_supported,omitempty"`
}

func (*SharedImageInitParameters) DeepCopy added in v0.35.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SharedImageInitParameters.

func (*SharedImageInitParameters) DeepCopyInto added in v0.35.0

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type SharedImageList added in v0.28.0

type SharedImageList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	Items           []SharedImage `json:"items"`
}

SharedImageList contains a list of SharedImages

func (*SharedImageList) DeepCopy added in v0.28.0

func (in *SharedImageList) DeepCopy() *SharedImageList

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SharedImageList.

func (*SharedImageList) DeepCopyInto added in v0.28.0

func (in *SharedImageList) DeepCopyInto(out *SharedImageList)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*SharedImageList) DeepCopyObject added in v0.28.0

func (in *SharedImageList) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

func (*SharedImageList) GetItems added in v0.28.0

func (l *SharedImageList) GetItems() []resource.Managed

GetItems of this SharedImageList.

type SharedImageObservation added in v0.28.0

type SharedImageObservation struct {

	// Specifies if the Shared Image supports Accelerated Network. Changing this forces a new resource to be created.
	AcceleratedNetworkSupportEnabled *bool `json:"acceleratedNetworkSupportEnabled,omitempty" tf:"accelerated_network_support_enabled,omitempty"`

	// CPU architecture supported by an OS. Possible values are x64 and Arm64. Defaults to x64. Changing this forces a new resource to be created.
	Architecture *string `json:"architecture,omitempty" tf:"architecture,omitempty"`

	// Specifies if Confidential Virtual Machines enabled. It will enable all the features of trusted, with higher confidentiality features for isolate machines or encrypted data. Available for Gen2 machines. Changing this forces a new resource to be created.
	ConfidentialVMEnabled *bool `json:"confidentialVmEnabled,omitempty" tf:"confidential_vm_enabled,omitempty"`

	// Specifies if supports creation of both Confidential virtual machines and Gen2 virtual machines with standard security from a compatible Gen2 OS disk VHD or Gen2 Managed image. Changing this forces a new resource to be created.
	ConfidentialVMSupported *bool `json:"confidentialVmSupported,omitempty" tf:"confidential_vm_supported,omitempty"`

	// A description of this Shared Image.
	Description *string `json:"description,omitempty" tf:"description,omitempty"`

	// One or more Disk Types not allowed for the Image. Possible values include Standard_LRS and Premium_LRS.
	// +listType=set
	DiskTypesNotAllowed []*string `json:"diskTypesNotAllowed,omitempty" tf:"disk_types_not_allowed,omitempty"`

	// The end of life date in RFC3339 format of the Image.
	EndOfLifeDate *string `json:"endOfLifeDate,omitempty" tf:"end_of_life_date,omitempty"`

	// The End User Licence Agreement for the Shared Image. Changing this forces a new resource to be created.
	Eula *string `json:"eula,omitempty" tf:"eula,omitempty"`

	// Specifies the name of the Shared Image Gallery in which this Shared Image should exist. Changing this forces a new resource to be created.
	GalleryName *string `json:"galleryName,omitempty" tf:"gallery_name,omitempty"`

	// The generation of HyperV that the Virtual Machine used to create the Shared Image is based on. Possible values are V1 and V2. Defaults to V1. Changing this forces a new resource to be created.
	HyperVGeneration *string `json:"hyperVGeneration,omitempty" tf:"hyper_v_generation,omitempty"`

	// The ID of the Shared Image.
	ID *string `json:"id,omitempty" tf:"id,omitempty"`

	// An identifier block as defined below.
	Identifier []IdentifierObservation `json:"identifier,omitempty" tf:"identifier,omitempty"`

	// Specifies the supported Azure location where the Shared Image Gallery exists. Changing this forces a new resource to be created.
	Location *string `json:"location,omitempty" tf:"location,omitempty"`

	// Maximum memory in GB recommended for the Image.
	MaxRecommendedMemoryInGb *float64 `json:"maxRecommendedMemoryInGb,omitempty" tf:"max_recommended_memory_in_gb,omitempty"`

	// Maximum count of vCPUs recommended for the Image.
	MaxRecommendedVcpuCount *float64 `json:"maxRecommendedVcpuCount,omitempty" tf:"max_recommended_vcpu_count,omitempty"`

	// Minimum memory in GB recommended for the Image.
	MinRecommendedMemoryInGb *float64 `json:"minRecommendedMemoryInGb,omitempty" tf:"min_recommended_memory_in_gb,omitempty"`

	// Minimum count of vCPUs recommended for the Image.
	MinRecommendedVcpuCount *float64 `json:"minRecommendedVcpuCount,omitempty" tf:"min_recommended_vcpu_count,omitempty"`

	// The type of Operating System present in this Shared Image. Possible values are Linux and Windows. Changing this forces a new resource to be created.
	OsType *string `json:"osType,omitempty" tf:"os_type,omitempty"`

	// The URI containing the Privacy Statement associated with this Shared Image. Changing this forces a new resource to be created.
	PrivacyStatementURI *string `json:"privacyStatementUri,omitempty" tf:"privacy_statement_uri,omitempty"`

	// A purchase_plan block as defined below.
	PurchasePlan []PurchasePlanObservation `json:"purchasePlan,omitempty" tf:"purchase_plan,omitempty"`

	// The URI containing the Release Notes associated with this Shared Image.
	ReleaseNoteURI *string `json:"releaseNoteUri,omitempty" tf:"release_note_uri,omitempty"`

	// The name of the resource group in which the Shared Image Gallery exists. Changing this forces a new resource to be created.
	ResourceGroupName *string `json:"resourceGroupName,omitempty" tf:"resource_group_name,omitempty"`

	// Specifies that the Operating System used inside this Image has not been Generalized (for example, sysprep on Windows has not been run). Changing this forces a new resource to be created.
	Specialized *bool `json:"specialized,omitempty" tf:"specialized,omitempty"`

	// A mapping of tags to assign to the Shared Image.
	// +mapType=granular
	Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"`

	// Specifies if Trusted Launch has to be enabled for the Virtual Machine created from the Shared Image. Changing this forces a new resource to be created.
	TrustedLaunchEnabled *bool `json:"trustedLaunchEnabled,omitempty" tf:"trusted_launch_enabled,omitempty"`

	// Specifies if supports creation of both Trusted Launch virtual machines and Gen2 virtual machines with standard security created from the Shared Image. Changing this forces a new resource to be created.
	TrustedLaunchSupported *bool `json:"trustedLaunchSupported,omitempty" tf:"trusted_launch_supported,omitempty"`
}

func (*SharedImageObservation) DeepCopy added in v0.28.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SharedImageObservation.

func (*SharedImageObservation) DeepCopyInto added in v0.28.0

func (in *SharedImageObservation) DeepCopyInto(out *SharedImageObservation)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type SharedImageParameters added in v0.28.0

type SharedImageParameters struct {

	// Specifies if the Shared Image supports Accelerated Network. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	AcceleratedNetworkSupportEnabled *bool `json:"acceleratedNetworkSupportEnabled,omitempty" tf:"accelerated_network_support_enabled,omitempty"`

	// CPU architecture supported by an OS. Possible values are x64 and Arm64. Defaults to x64. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	Architecture *string `json:"architecture,omitempty" tf:"architecture,omitempty"`

	// Specifies if Confidential Virtual Machines enabled. It will enable all the features of trusted, with higher confidentiality features for isolate machines or encrypted data. Available for Gen2 machines. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	ConfidentialVMEnabled *bool `json:"confidentialVmEnabled,omitempty" tf:"confidential_vm_enabled,omitempty"`

	// Specifies if supports creation of both Confidential virtual machines and Gen2 virtual machines with standard security from a compatible Gen2 OS disk VHD or Gen2 Managed image. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	ConfidentialVMSupported *bool `json:"confidentialVmSupported,omitempty" tf:"confidential_vm_supported,omitempty"`

	// A description of this Shared Image.
	// +kubebuilder:validation:Optional
	Description *string `json:"description,omitempty" tf:"description,omitempty"`

	// One or more Disk Types not allowed for the Image. Possible values include Standard_LRS and Premium_LRS.
	// +kubebuilder:validation:Optional
	// +listType=set
	DiskTypesNotAllowed []*string `json:"diskTypesNotAllowed,omitempty" tf:"disk_types_not_allowed,omitempty"`

	// The end of life date in RFC3339 format of the Image.
	// +kubebuilder:validation:Optional
	EndOfLifeDate *string `json:"endOfLifeDate,omitempty" tf:"end_of_life_date,omitempty"`

	// The End User Licence Agreement for the Shared Image. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	Eula *string `json:"eula,omitempty" tf:"eula,omitempty"`

	// Specifies the name of the Shared Image Gallery in which this Shared Image should exist. Changing this forces a new resource to be created.
	// +crossplane:generate:reference:type=github.com/upbound/provider-azure/apis/compute/v1beta1.SharedImageGallery
	// +kubebuilder:validation:Optional
	GalleryName *string `json:"galleryName,omitempty" tf:"gallery_name,omitempty"`

	// Reference to a SharedImageGallery in compute to populate galleryName.
	// +kubebuilder:validation:Optional
	GalleryNameRef *v1.Reference `json:"galleryNameRef,omitempty" tf:"-"`

	// Selector for a SharedImageGallery in compute to populate galleryName.
	// +kubebuilder:validation:Optional
	GalleryNameSelector *v1.Selector `json:"galleryNameSelector,omitempty" tf:"-"`

	// The generation of HyperV that the Virtual Machine used to create the Shared Image is based on. Possible values are V1 and V2. Defaults to V1. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	HyperVGeneration *string `json:"hyperVGeneration,omitempty" tf:"hyper_v_generation,omitempty"`

	// An identifier block as defined below.
	// +kubebuilder:validation:Optional
	Identifier []IdentifierParameters `json:"identifier,omitempty" tf:"identifier,omitempty"`

	// Specifies the supported Azure location where the Shared Image Gallery exists. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	Location *string `json:"location,omitempty" tf:"location,omitempty"`

	// Maximum memory in GB recommended for the Image.
	// +kubebuilder:validation:Optional
	MaxRecommendedMemoryInGb *float64 `json:"maxRecommendedMemoryInGb,omitempty" tf:"max_recommended_memory_in_gb,omitempty"`

	// Maximum count of vCPUs recommended for the Image.
	// +kubebuilder:validation:Optional
	MaxRecommendedVcpuCount *float64 `json:"maxRecommendedVcpuCount,omitempty" tf:"max_recommended_vcpu_count,omitempty"`

	// Minimum memory in GB recommended for the Image.
	// +kubebuilder:validation:Optional
	MinRecommendedMemoryInGb *float64 `json:"minRecommendedMemoryInGb,omitempty" tf:"min_recommended_memory_in_gb,omitempty"`

	// Minimum count of vCPUs recommended for the Image.
	// +kubebuilder:validation:Optional
	MinRecommendedVcpuCount *float64 `json:"minRecommendedVcpuCount,omitempty" tf:"min_recommended_vcpu_count,omitempty"`

	// The type of Operating System present in this Shared Image. Possible values are Linux and Windows. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	OsType *string `json:"osType,omitempty" tf:"os_type,omitempty"`

	// The URI containing the Privacy Statement associated with this Shared Image. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	PrivacyStatementURI *string `json:"privacyStatementUri,omitempty" tf:"privacy_statement_uri,omitempty"`

	// A purchase_plan block as defined below.
	// +kubebuilder:validation:Optional
	PurchasePlan []PurchasePlanParameters `json:"purchasePlan,omitempty" tf:"purchase_plan,omitempty"`

	// The URI containing the Release Notes associated with this Shared Image.
	// +kubebuilder:validation:Optional
	ReleaseNoteURI *string `json:"releaseNoteUri,omitempty" tf:"release_note_uri,omitempty"`

	// The name of the resource group in which the Shared Image Gallery exists. 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:"-"`

	// Specifies that the Operating System used inside this Image has not been Generalized (for example, sysprep on Windows has not been run). Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	Specialized *bool `json:"specialized,omitempty" tf:"specialized,omitempty"`

	// A mapping of tags to assign to the Shared Image.
	// +kubebuilder:validation:Optional
	// +mapType=granular
	Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"`

	// Specifies if Trusted Launch has to be enabled for the Virtual Machine created from the Shared Image. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	TrustedLaunchEnabled *bool `json:"trustedLaunchEnabled,omitempty" tf:"trusted_launch_enabled,omitempty"`

	// Specifies if supports creation of both Trusted Launch virtual machines and Gen2 virtual machines with standard security created from the Shared Image. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	TrustedLaunchSupported *bool `json:"trustedLaunchSupported,omitempty" tf:"trusted_launch_supported,omitempty"`
}

func (*SharedImageParameters) DeepCopy added in v0.28.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SharedImageParameters.

func (*SharedImageParameters) DeepCopyInto added in v0.28.0

func (in *SharedImageParameters) DeepCopyInto(out *SharedImageParameters)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type SharedImageSpec added in v0.28.0

type SharedImageSpec struct {
	v1.ResourceSpec `json:",inline"`
	ForProvider     SharedImageParameters `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 SharedImageInitParameters `json:"initProvider,omitempty"`
}

SharedImageSpec defines the desired state of SharedImage

func (*SharedImageSpec) DeepCopy added in v0.28.0

func (in *SharedImageSpec) DeepCopy() *SharedImageSpec

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SharedImageSpec.

func (*SharedImageSpec) DeepCopyInto added in v0.28.0

func (in *SharedImageSpec) DeepCopyInto(out *SharedImageSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type SharedImageStatus added in v0.28.0

type SharedImageStatus struct {
	v1.ResourceStatus `json:",inline"`
	AtProvider        SharedImageObservation `json:"atProvider,omitempty"`
}

SharedImageStatus defines the observed state of SharedImage.

func (*SharedImageStatus) DeepCopy added in v0.28.0

func (in *SharedImageStatus) DeepCopy() *SharedImageStatus

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SharedImageStatus.

func (*SharedImageStatus) DeepCopyInto added in v0.28.0

func (in *SharedImageStatus) DeepCopyInto(out *SharedImageStatus)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type SharingInitParameters added in v1.0.0

type SharingInitParameters struct {

	// A community_gallery block as defined below. Changing this forces a new resource to be created.
	CommunityGallery []CommunityGalleryInitParameters `json:"communityGallery,omitempty" tf:"community_gallery,omitempty"`

	// The permission of the Shared Image Gallery when sharing. Possible values are Community, Groups and Private. Changing this forces a new resource to be created.
	Permission *string `json:"permission,omitempty" tf:"permission,omitempty"`
}

func (*SharingInitParameters) DeepCopy added in v1.0.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SharingInitParameters.

func (*SharingInitParameters) DeepCopyInto added in v1.0.0

func (in *SharingInitParameters) DeepCopyInto(out *SharingInitParameters)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type SharingObservation added in v1.0.0

type SharingObservation struct {

	// A community_gallery block as defined below. Changing this forces a new resource to be created.
	CommunityGallery []CommunityGalleryObservation `json:"communityGallery,omitempty" tf:"community_gallery,omitempty"`

	// The permission of the Shared Image Gallery when sharing. Possible values are Community, Groups and Private. Changing this forces a new resource to be created.
	Permission *string `json:"permission,omitempty" tf:"permission,omitempty"`
}

func (*SharingObservation) DeepCopy added in v1.0.0

func (in *SharingObservation) DeepCopy() *SharingObservation

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SharingObservation.

func (*SharingObservation) DeepCopyInto added in v1.0.0

func (in *SharingObservation) DeepCopyInto(out *SharingObservation)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type SharingParameters added in v1.0.0

type SharingParameters struct {

	// A community_gallery block as defined below. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	CommunityGallery []CommunityGalleryParameters `json:"communityGallery,omitempty" tf:"community_gallery,omitempty"`

	// The permission of the Shared Image Gallery when sharing. Possible values are Community, Groups and Private. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	Permission *string `json:"permission" tf:"permission,omitempty"`
}

func (*SharingParameters) DeepCopy added in v1.0.0

func (in *SharingParameters) DeepCopy() *SharingParameters

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SharingParameters.

func (*SharingParameters) DeepCopyInto added in v1.0.0

func (in *SharingParameters) DeepCopyInto(out *SharingParameters)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type SkuInitParameters added in v0.35.0

type SkuInitParameters struct {

	// Specifies the number of instances to be reserved. It must be a positive integer and not exceed the quota in the subscription.
	Capacity *float64 `json:"capacity,omitempty" tf:"capacity,omitempty"`

	// Name of the sku, such as Standard_F2. Changing this forces a new resource to be created.
	Name *string `json:"name,omitempty" tf:"name,omitempty"`
}

func (*SkuInitParameters) DeepCopy added in v0.35.0

func (in *SkuInitParameters) DeepCopy() *SkuInitParameters

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SkuInitParameters.

func (*SkuInitParameters) DeepCopyInto added in v0.35.0

func (in *SkuInitParameters) DeepCopyInto(out *SkuInitParameters)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type SkuObservation added in v0.28.0

type SkuObservation struct {

	// Specifies the number of instances to be reserved. It must be a positive integer and not exceed the quota in the subscription.
	Capacity *float64 `json:"capacity,omitempty" tf:"capacity,omitempty"`

	// Name of the sku, such as Standard_F2. Changing this forces a new resource to be created.
	Name *string `json:"name,omitempty" tf:"name,omitempty"`
}

func (*SkuObservation) DeepCopy added in v0.28.0

func (in *SkuObservation) DeepCopy() *SkuObservation

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SkuObservation.

func (*SkuObservation) DeepCopyInto added in v0.28.0

func (in *SkuObservation) DeepCopyInto(out *SkuObservation)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type SkuParameters added in v0.28.0

type SkuParameters struct {

	// Specifies the number of instances to be reserved. It must be a positive integer and not exceed the quota in the subscription.
	// +kubebuilder:validation:Optional
	Capacity *float64 `json:"capacity" tf:"capacity,omitempty"`

	// Name of the sku, such as Standard_F2. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	Name *string `json:"name" tf:"name,omitempty"`
}

func (*SkuParameters) DeepCopy added in v0.28.0

func (in *SkuParameters) DeepCopy() *SkuParameters

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SkuParameters.

func (*SkuParameters) DeepCopyInto added in v0.28.0

func (in *SkuParameters) DeepCopyInto(out *SkuParameters)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type Snapshot

type Snapshot 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.createOption) || (has(self.initProvider) && has(self.initProvider.createOption))",message="spec.forProvider.createOption 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   SnapshotSpec   `json:"spec"`
	Status SnapshotStatus `json:"status,omitempty"`
}

Snapshot is the Schema for the Snapshots API. Manages a Disk Snapshot. +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 (*Snapshot) DeepCopy

func (in *Snapshot) DeepCopy() *Snapshot

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Snapshot.

func (*Snapshot) DeepCopyInto

func (in *Snapshot) DeepCopyInto(out *Snapshot)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*Snapshot) DeepCopyObject

func (in *Snapshot) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

func (*Snapshot) GetCondition

func (mg *Snapshot) GetCondition(ct xpv1.ConditionType) xpv1.Condition

GetCondition of this Snapshot.

func (*Snapshot) GetConnectionDetailsMapping

func (tr *Snapshot) GetConnectionDetailsMapping() map[string]string

GetConnectionDetailsMapping for this Snapshot

func (*Snapshot) GetDeletionPolicy

func (mg *Snapshot) GetDeletionPolicy() xpv1.DeletionPolicy

GetDeletionPolicy of this Snapshot.

func (*Snapshot) GetID

func (tr *Snapshot) GetID() string

GetID returns ID of underlying Terraform resource of this Snapshot

func (*Snapshot) GetInitParameters added in v0.35.0

func (tr *Snapshot) GetInitParameters() (map[string]any, error)

GetInitParameters of this Snapshot

func (*Snapshot) GetManagementPolicies added in v0.35.0

func (mg *Snapshot) GetManagementPolicies() xpv1.ManagementPolicies

GetManagementPolicies of this Snapshot.

func (*Snapshot) GetMergedParameters added in v0.40.0

func (tr *Snapshot) GetMergedParameters(shouldMergeInitProvider bool) (map[string]any, error)

GetInitParameters of this Snapshot

func (*Snapshot) GetObservation

func (tr *Snapshot) GetObservation() (map[string]any, error)

GetObservation of this Snapshot

func (*Snapshot) GetParameters

func (tr *Snapshot) GetParameters() (map[string]any, error)

GetParameters of this Snapshot

func (*Snapshot) GetProviderConfigReference

func (mg *Snapshot) GetProviderConfigReference() *xpv1.Reference

GetProviderConfigReference of this Snapshot.

func (*Snapshot) GetPublishConnectionDetailsTo

func (mg *Snapshot) GetPublishConnectionDetailsTo() *xpv1.PublishConnectionDetailsTo

GetPublishConnectionDetailsTo of this Snapshot.

func (*Snapshot) GetTerraformResourceType

func (mg *Snapshot) GetTerraformResourceType() string

GetTerraformResourceType returns Terraform resource type for this Snapshot

func (*Snapshot) GetTerraformSchemaVersion

func (tr *Snapshot) GetTerraformSchemaVersion() int

GetTerraformSchemaVersion returns the associated Terraform schema version

func (*Snapshot) GetWriteConnectionSecretToReference

func (mg *Snapshot) GetWriteConnectionSecretToReference() *xpv1.SecretReference

GetWriteConnectionSecretToReference of this Snapshot.

func (*Snapshot) Hub added in v0.42.1

func (tr *Snapshot) Hub()

Hub marks this type as a conversion hub.

func (*Snapshot) LateInitialize

func (tr *Snapshot) LateInitialize(attrs []byte) (bool, error)

LateInitialize this Snapshot using its observed tfState. returns True if there are any spec changes for the resource.

func (*Snapshot) ResolveReferences

func (mg *Snapshot) ResolveReferences(ctx context.Context, c client.Reader) error

ResolveReferences of this Snapshot.

func (*Snapshot) SetConditions

func (mg *Snapshot) SetConditions(c ...xpv1.Condition)

SetConditions of this Snapshot.

func (*Snapshot) SetDeletionPolicy

func (mg *Snapshot) SetDeletionPolicy(r xpv1.DeletionPolicy)

SetDeletionPolicy of this Snapshot.

func (*Snapshot) SetManagementPolicies added in v0.35.0

func (mg *Snapshot) SetManagementPolicies(r xpv1.ManagementPolicies)

SetManagementPolicies of this Snapshot.

func (*Snapshot) SetObservation

func (tr *Snapshot) SetObservation(obs map[string]any) error

SetObservation for this Snapshot

func (*Snapshot) SetParameters

func (tr *Snapshot) SetParameters(params map[string]any) error

SetParameters for this Snapshot

func (*Snapshot) SetProviderConfigReference

func (mg *Snapshot) SetProviderConfigReference(r *xpv1.Reference)

SetProviderConfigReference of this Snapshot.

func (*Snapshot) SetPublishConnectionDetailsTo

func (mg *Snapshot) SetPublishConnectionDetailsTo(r *xpv1.PublishConnectionDetailsTo)

SetPublishConnectionDetailsTo of this Snapshot.

func (*Snapshot) SetWriteConnectionSecretToReference

func (mg *Snapshot) SetWriteConnectionSecretToReference(r *xpv1.SecretReference)

SetWriteConnectionSecretToReference of this Snapshot.

type SnapshotEncryptionSettingsInitParameters added in v0.35.0

type SnapshotEncryptionSettingsInitParameters struct {

	// A disk_encryption_key block as defined below.
	DiskEncryptionKey []EncryptionSettingsDiskEncryptionKeyInitParameters `json:"diskEncryptionKey,omitempty" tf:"disk_encryption_key,omitempty"`

	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// A key_encryption_key block as defined below.
	KeyEncryptionKey []EncryptionSettingsKeyEncryptionKeyInitParameters `json:"keyEncryptionKey,omitempty" tf:"key_encryption_key,omitempty"`
}

func (*SnapshotEncryptionSettingsInitParameters) DeepCopy added in v0.35.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SnapshotEncryptionSettingsInitParameters.

func (*SnapshotEncryptionSettingsInitParameters) DeepCopyInto added in v0.35.0

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type SnapshotEncryptionSettingsObservation

type SnapshotEncryptionSettingsObservation struct {

	// A disk_encryption_key block as defined below.
	DiskEncryptionKey []EncryptionSettingsDiskEncryptionKeyObservation `json:"diskEncryptionKey,omitempty" tf:"disk_encryption_key,omitempty"`

	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// A key_encryption_key block as defined below.
	KeyEncryptionKey []EncryptionSettingsKeyEncryptionKeyObservation `json:"keyEncryptionKey,omitempty" tf:"key_encryption_key,omitempty"`
}

func (*SnapshotEncryptionSettingsObservation) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SnapshotEncryptionSettingsObservation.

func (*SnapshotEncryptionSettingsObservation) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type SnapshotEncryptionSettingsParameters

type SnapshotEncryptionSettingsParameters struct {

	// A disk_encryption_key block as defined below.
	// +kubebuilder:validation:Optional
	DiskEncryptionKey []EncryptionSettingsDiskEncryptionKeyParameters `json:"diskEncryptionKey,omitempty" tf:"disk_encryption_key,omitempty"`

	// +kubebuilder:validation:Optional
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// A key_encryption_key block as defined below.
	// +kubebuilder:validation:Optional
	KeyEncryptionKey []EncryptionSettingsKeyEncryptionKeyParameters `json:"keyEncryptionKey,omitempty" tf:"key_encryption_key,omitempty"`
}

func (*SnapshotEncryptionSettingsParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SnapshotEncryptionSettingsParameters.

func (*SnapshotEncryptionSettingsParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type SnapshotInitParameters added in v0.35.0

type SnapshotInitParameters struct {

	// Indicates how the snapshot is to be created. Possible values are Copy or Import.
	CreateOption *string `json:"createOption,omitempty" tf:"create_option,omitempty"`

	// The size of the Snapshotted Disk in GB.
	DiskSizeGb *float64 `json:"diskSizeGb,omitempty" tf:"disk_size_gb,omitempty"`

	// A encryption_settings block as defined below.
	EncryptionSettings []SnapshotEncryptionSettingsInitParameters `json:"encryptionSettings,omitempty" tf:"encryption_settings,omitempty"`

	// Specifies if the Snapshot is incremental. Changing this forces a new resource to be created.
	IncrementalEnabled *bool `json:"incrementalEnabled,omitempty" tf:"incremental_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"`

	// Specifies a reference to an existing snapshot, when create_option is Copy. Changing this forces a new resource to be created.
	SourceResourceID *string `json:"sourceResourceId,omitempty" tf:"source_resource_id,omitempty"`

	// Specifies the URI to a Managed or Unmanaged Disk. Changing this forces a new resource to be created.
	// +crossplane:generate:reference:type=github.com/upbound/provider-azure/apis/compute/v1beta1.ManagedDisk
	// +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractResourceID()
	SourceURI *string `json:"sourceUri,omitempty" tf:"source_uri,omitempty"`

	// Reference to a ManagedDisk in compute to populate sourceUri.
	// +kubebuilder:validation:Optional
	SourceURIRef *v1.Reference `json:"sourceUriRef,omitempty" tf:"-"`

	// Selector for a ManagedDisk in compute to populate sourceUri.
	// +kubebuilder:validation:Optional
	SourceURISelector *v1.Selector `json:"sourceUriSelector,omitempty" tf:"-"`

	// Specifies the ID of an storage account. Used with source_uri to allow authorization during import of unmanaged blobs from a different subscription. Changing this forces a new resource to be created.
	StorageAccountID *string `json:"storageAccountId,omitempty" tf:"storage_account_id,omitempty"`

	// A mapping of tags to assign to the resource.
	// +mapType=granular
	Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"`
}

func (*SnapshotInitParameters) DeepCopy added in v0.35.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SnapshotInitParameters.

func (*SnapshotInitParameters) DeepCopyInto added in v0.35.0

func (in *SnapshotInitParameters) DeepCopyInto(out *SnapshotInitParameters)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type SnapshotList

type SnapshotList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	Items           []Snapshot `json:"items"`
}

SnapshotList contains a list of Snapshots

func (*SnapshotList) DeepCopy

func (in *SnapshotList) DeepCopy() *SnapshotList

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SnapshotList.

func (*SnapshotList) DeepCopyInto

func (in *SnapshotList) DeepCopyInto(out *SnapshotList)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*SnapshotList) DeepCopyObject

func (in *SnapshotList) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

func (*SnapshotList) GetItems

func (l *SnapshotList) GetItems() []resource.Managed

GetItems of this SnapshotList.

type SnapshotObservation

type SnapshotObservation struct {

	// Indicates how the snapshot is to be created. Possible values are Copy or Import.
	CreateOption *string `json:"createOption,omitempty" tf:"create_option,omitempty"`

	// The size of the Snapshotted Disk in GB.
	DiskSizeGb *float64 `json:"diskSizeGb,omitempty" tf:"disk_size_gb,omitempty"`

	// A encryption_settings block as defined below.
	EncryptionSettings []SnapshotEncryptionSettingsObservation `json:"encryptionSettings,omitempty" tf:"encryption_settings,omitempty"`

	// The Snapshot ID.
	ID *string `json:"id,omitempty" tf:"id,omitempty"`

	// Specifies if the Snapshot is incremental. Changing this forces a new resource to be created.
	IncrementalEnabled *bool `json:"incrementalEnabled,omitempty" tf:"incremental_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"`

	// The name of the resource group in which to create the Snapshot. Changing this forces a new resource to be created.
	ResourceGroupName *string `json:"resourceGroupName,omitempty" tf:"resource_group_name,omitempty"`

	// Specifies a reference to an existing snapshot, when create_option is Copy. Changing this forces a new resource to be created.
	SourceResourceID *string `json:"sourceResourceId,omitempty" tf:"source_resource_id,omitempty"`

	// Specifies the URI to a Managed or Unmanaged Disk. Changing this forces a new resource to be created.
	SourceURI *string `json:"sourceUri,omitempty" tf:"source_uri,omitempty"`

	// Specifies the ID of an storage account. Used with source_uri to allow authorization during import of unmanaged blobs from a different subscription. Changing this forces a new resource to be created.
	StorageAccountID *string `json:"storageAccountId,omitempty" tf:"storage_account_id,omitempty"`

	// A mapping of tags to assign to the resource.
	// +mapType=granular
	Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"`

	// Whether Trusted Launch is enabled for the Snapshot.
	TrustedLaunchEnabled *bool `json:"trustedLaunchEnabled,omitempty" tf:"trusted_launch_enabled,omitempty"`
}

func (*SnapshotObservation) DeepCopy

func (in *SnapshotObservation) DeepCopy() *SnapshotObservation

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SnapshotObservation.

func (*SnapshotObservation) DeepCopyInto

func (in *SnapshotObservation) DeepCopyInto(out *SnapshotObservation)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type SnapshotParameters

type SnapshotParameters struct {

	// Indicates how the snapshot is to be created. Possible values are Copy or Import.
	// +kubebuilder:validation:Optional
	CreateOption *string `json:"createOption,omitempty" tf:"create_option,omitempty"`

	// The size of the Snapshotted Disk in GB.
	// +kubebuilder:validation:Optional
	DiskSizeGb *float64 `json:"diskSizeGb,omitempty" tf:"disk_size_gb,omitempty"`

	// A encryption_settings block as defined below.
	// +kubebuilder:validation:Optional
	EncryptionSettings []SnapshotEncryptionSettingsParameters `json:"encryptionSettings,omitempty" tf:"encryption_settings,omitempty"`

	// Specifies if the Snapshot is incremental. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	IncrementalEnabled *bool `json:"incrementalEnabled,omitempty" tf:"incremental_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"`

	// The name of the resource group in which to create the Snapshot. 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:"-"`

	// Specifies a reference to an existing snapshot, when create_option is Copy. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	SourceResourceID *string `json:"sourceResourceId,omitempty" tf:"source_resource_id,omitempty"`

	// Specifies the URI to a Managed or Unmanaged Disk. Changing this forces a new resource to be created.
	// +crossplane:generate:reference:type=github.com/upbound/provider-azure/apis/compute/v1beta1.ManagedDisk
	// +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractResourceID()
	// +kubebuilder:validation:Optional
	SourceURI *string `json:"sourceUri,omitempty" tf:"source_uri,omitempty"`

	// Reference to a ManagedDisk in compute to populate sourceUri.
	// +kubebuilder:validation:Optional
	SourceURIRef *v1.Reference `json:"sourceUriRef,omitempty" tf:"-"`

	// Selector for a ManagedDisk in compute to populate sourceUri.
	// +kubebuilder:validation:Optional
	SourceURISelector *v1.Selector `json:"sourceUriSelector,omitempty" tf:"-"`

	// Specifies the ID of an storage account. Used with source_uri to allow authorization during import of unmanaged blobs from a different subscription. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	StorageAccountID *string `json:"storageAccountId,omitempty" tf:"storage_account_id,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"`
}

func (*SnapshotParameters) DeepCopy

func (in *SnapshotParameters) DeepCopy() *SnapshotParameters

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SnapshotParameters.

func (*SnapshotParameters) DeepCopyInto

func (in *SnapshotParameters) DeepCopyInto(out *SnapshotParameters)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type SnapshotSpec

type SnapshotSpec struct {
	v1.ResourceSpec `json:",inline"`
	ForProvider     SnapshotParameters `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 SnapshotInitParameters `json:"initProvider,omitempty"`
}

SnapshotSpec defines the desired state of Snapshot

func (*SnapshotSpec) DeepCopy

func (in *SnapshotSpec) DeepCopy() *SnapshotSpec

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SnapshotSpec.

func (*SnapshotSpec) DeepCopyInto

func (in *SnapshotSpec) DeepCopyInto(out *SnapshotSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type SnapshotStatus

type SnapshotStatus struct {
	v1.ResourceStatus `json:",inline"`
	AtProvider        SnapshotObservation `json:"atProvider,omitempty"`
}

SnapshotStatus defines the observed state of Snapshot.

func (*SnapshotStatus) DeepCopy

func (in *SnapshotStatus) DeepCopy() *SnapshotStatus

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SnapshotStatus.

func (*SnapshotStatus) DeepCopyInto

func (in *SnapshotStatus) DeepCopyInto(out *SnapshotStatus)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type SourceImageReferenceInitParameters added in v0.35.0

type SourceImageReferenceInitParameters struct {

	// Specifies the offer of the image used to create the virtual machines. Changing this forces a new resource to be created.
	Offer *string `json:"offer,omitempty" tf:"offer,omitempty"`

	// Specifies the publisher of the image used to create the virtual machines. Changing this forces a new resource to be created.
	Publisher *string `json:"publisher,omitempty" tf:"publisher,omitempty"`

	// Specifies the SKU of the image used to create the virtual machines. Changing this forces a new resource to be created.
	Sku *string `json:"sku,omitempty" tf:"sku,omitempty"`

	// Specifies the version of the image used to create the virtual machines. Changing this forces a new resource to be created.
	Version *string `json:"version,omitempty" tf:"version,omitempty"`
}

func (*SourceImageReferenceInitParameters) DeepCopy added in v0.35.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SourceImageReferenceInitParameters.

func (*SourceImageReferenceInitParameters) DeepCopyInto added in v0.35.0

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type SourceImageReferenceObservation

type SourceImageReferenceObservation struct {

	// Specifies the offer of the image used to create the virtual machines. Changing this forces a new resource to be created.
	Offer *string `json:"offer,omitempty" tf:"offer,omitempty"`

	// Specifies the publisher of the image used to create the virtual machines. Changing this forces a new resource to be created.
	Publisher *string `json:"publisher,omitempty" tf:"publisher,omitempty"`

	// Specifies the SKU of the image used to create the virtual machines. Changing this forces a new resource to be created.
	Sku *string `json:"sku,omitempty" tf:"sku,omitempty"`

	// Specifies the version of the image used to create the virtual machines. Changing this forces a new resource to be created.
	Version *string `json:"version,omitempty" tf:"version,omitempty"`
}

func (*SourceImageReferenceObservation) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SourceImageReferenceObservation.

func (*SourceImageReferenceObservation) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type SourceImageReferenceParameters

type SourceImageReferenceParameters struct {

	// Specifies the offer of the image used to create the virtual machines. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	Offer *string `json:"offer" tf:"offer,omitempty"`

	// Specifies the publisher of the image used to create the virtual machines. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	Publisher *string `json:"publisher" tf:"publisher,omitempty"`

	// Specifies the SKU of the image used to create the virtual machines. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	Sku *string `json:"sku" tf:"sku,omitempty"`

	// Specifies the version of the image used to create the virtual machines. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	Version *string `json:"version" tf:"version,omitempty"`
}

func (*SourceImageReferenceParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SourceImageReferenceParameters.

func (*SourceImageReferenceParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type SourceInitParameters added in v0.35.0

type SourceInitParameters struct {

	// The Storage Blob URI of the default configuration. Changing this forces a new resource to be created.
	DefaultConfigurationLink *string `json:"defaultConfigurationLink,omitempty" tf:"default_configuration_link,omitempty"`

	// The Storage Blob URI of the source application package. Changing this forces a new resource to be created.
	// +crossplane:generate:reference:type=github.com/upbound/provider-azure/apis/storage/v1beta1.Blob
	// +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractResourceID()
	MediaLink *string `json:"mediaLink,omitempty" tf:"media_link,omitempty"`

	// Reference to a Blob in storage to populate mediaLink.
	// +kubebuilder:validation:Optional
	MediaLinkRef *v1.Reference `json:"mediaLinkRef,omitempty" tf:"-"`

	// Selector for a Blob in storage to populate mediaLink.
	// +kubebuilder:validation:Optional
	MediaLinkSelector *v1.Selector `json:"mediaLinkSelector,omitempty" tf:"-"`
}

func (*SourceInitParameters) DeepCopy added in v0.35.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SourceInitParameters.

func (*SourceInitParameters) DeepCopyInto added in v0.35.0

func (in *SourceInitParameters) DeepCopyInto(out *SourceInitParameters)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type SourceObservation added in v0.28.0

type SourceObservation struct {

	// The Storage Blob URI of the default configuration. Changing this forces a new resource to be created.
	DefaultConfigurationLink *string `json:"defaultConfigurationLink,omitempty" tf:"default_configuration_link,omitempty"`

	// The Storage Blob URI of the source application package. Changing this forces a new resource to be created.
	MediaLink *string `json:"mediaLink,omitempty" tf:"media_link,omitempty"`
}

func (*SourceObservation) DeepCopy added in v0.28.0

func (in *SourceObservation) DeepCopy() *SourceObservation

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SourceObservation.

func (*SourceObservation) DeepCopyInto added in v0.28.0

func (in *SourceObservation) DeepCopyInto(out *SourceObservation)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type SourceParameters added in v0.28.0

type SourceParameters struct {

	// The Storage Blob URI of the default configuration. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	DefaultConfigurationLink *string `json:"defaultConfigurationLink,omitempty" tf:"default_configuration_link,omitempty"`

	// The Storage Blob URI of the source application package. Changing this forces a new resource to be created.
	// +crossplane:generate:reference:type=github.com/upbound/provider-azure/apis/storage/v1beta1.Blob
	// +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractResourceID()
	// +kubebuilder:validation:Optional
	MediaLink *string `json:"mediaLink,omitempty" tf:"media_link,omitempty"`

	// Reference to a Blob in storage to populate mediaLink.
	// +kubebuilder:validation:Optional
	MediaLinkRef *v1.Reference `json:"mediaLinkRef,omitempty" tf:"-"`

	// Selector for a Blob in storage to populate mediaLink.
	// +kubebuilder:validation:Optional
	MediaLinkSelector *v1.Selector `json:"mediaLinkSelector,omitempty" tf:"-"`
}

func (*SourceParameters) DeepCopy added in v0.28.0

func (in *SourceParameters) DeepCopy() *SourceParameters

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SourceParameters.

func (*SourceParameters) DeepCopyInto added in v0.28.0

func (in *SourceParameters) DeepCopyInto(out *SourceParameters)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type SpotRestoreInitParameters added in v0.35.0

type SpotRestoreInitParameters struct {

	// Should the Spot-Try-Restore feature be enabled? The Spot-Try-Restore feature will attempt to automatically restore the evicted Spot Virtual Machine Scale Set VM instances opportunistically based on capacity availability and pricing constraints. Possible values are true or false. Defaults to false. Changing this forces a new resource to be created.
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// The length of time that the Virtual Machine Scale Set should attempt to restore the Spot VM instances which have been evicted. The time duration should be between 15 minutes and 120 minutes (inclusive). The time duration should be specified in the ISO 8601 format. Defaults to PT1H. Changing this forces a new resource to be created.
	Timeout *string `json:"timeout,omitempty" tf:"timeout,omitempty"`
}

func (*SpotRestoreInitParameters) DeepCopy added in v0.35.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SpotRestoreInitParameters.

func (*SpotRestoreInitParameters) DeepCopyInto added in v0.35.0

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type SpotRestoreObservation added in v0.26.0

type SpotRestoreObservation struct {

	// Should the Spot-Try-Restore feature be enabled? The Spot-Try-Restore feature will attempt to automatically restore the evicted Spot Virtual Machine Scale Set VM instances opportunistically based on capacity availability and pricing constraints. Possible values are true or false. Defaults to false. Changing this forces a new resource to be created.
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// The length of time that the Virtual Machine Scale Set should attempt to restore the Spot VM instances which have been evicted. The time duration should be between 15 minutes and 120 minutes (inclusive). The time duration should be specified in the ISO 8601 format. Defaults to PT1H. Changing this forces a new resource to be created.
	Timeout *string `json:"timeout,omitempty" tf:"timeout,omitempty"`
}

func (*SpotRestoreObservation) DeepCopy added in v0.26.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SpotRestoreObservation.

func (*SpotRestoreObservation) DeepCopyInto added in v0.26.0

func (in *SpotRestoreObservation) DeepCopyInto(out *SpotRestoreObservation)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type SpotRestoreParameters added in v0.26.0

type SpotRestoreParameters struct {

	// Should the Spot-Try-Restore feature be enabled? The Spot-Try-Restore feature will attempt to automatically restore the evicted Spot Virtual Machine Scale Set VM instances opportunistically based on capacity availability and pricing constraints. Possible values are true or false. Defaults to false. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// The length of time that the Virtual Machine Scale Set should attempt to restore the Spot VM instances which have been evicted. The time duration should be between 15 minutes and 120 minutes (inclusive). The time duration should be specified in the ISO 8601 format. Defaults to PT1H. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	Timeout *string `json:"timeout,omitempty" tf:"timeout,omitempty"`
}

func (*SpotRestoreParameters) DeepCopy added in v0.26.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SpotRestoreParameters.

func (*SpotRestoreParameters) DeepCopyInto added in v0.26.0

func (in *SpotRestoreParameters) DeepCopyInto(out *SpotRestoreParameters)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type TargetRegionInitParameters added in v0.35.0

type TargetRegionInitParameters struct {

	// Specifies whether this Gallery Application Version should be excluded from the latest filter. If set to true, this Gallery Application Version won't be returned for the latest version. Defaults to false.
	ExcludeFromLatest *bool `json:"excludeFromLatest,omitempty" tf:"exclude_from_latest,omitempty"`

	// The Azure Region in which the Gallery Application Version exists.
	// +crossplane:generate:reference:type=github.com/upbound/provider-azure/apis/compute/v1beta1.GalleryApplication
	// +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractParamPath("location",false)
	Name *string `json:"name,omitempty" tf:"name,omitempty"`

	// Reference to a GalleryApplication in compute to populate name.
	// +kubebuilder:validation:Optional
	NameRef *v1.Reference `json:"nameRef,omitempty" tf:"-"`

	// Selector for a GalleryApplication in compute to populate name.
	// +kubebuilder:validation:Optional
	NameSelector *v1.Selector `json:"nameSelector,omitempty" tf:"-"`

	// The number of replicas of the Gallery Application Version to be created per region. Possible values are between 1 and 10.
	RegionalReplicaCount *float64 `json:"regionalReplicaCount,omitempty" tf:"regional_replica_count,omitempty"`

	// The storage account type for the Gallery Application Version. Possible values are Standard_LRS, Premium_LRS and Standard_ZRS. Defaults to Standard_LRS.
	StorageAccountType *string `json:"storageAccountType,omitempty" tf:"storage_account_type,omitempty"`
}

func (*TargetRegionInitParameters) DeepCopy added in v0.35.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TargetRegionInitParameters.

func (*TargetRegionInitParameters) DeepCopyInto added in v0.35.0

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type TargetRegionObservation added in v0.28.0

type TargetRegionObservation struct {

	// Specifies whether this Gallery Application Version should be excluded from the latest filter. If set to true, this Gallery Application Version won't be returned for the latest version. Defaults to false.
	ExcludeFromLatest *bool `json:"excludeFromLatest,omitempty" tf:"exclude_from_latest,omitempty"`

	// The Azure Region in which the Gallery Application Version exists.
	Name *string `json:"name,omitempty" tf:"name,omitempty"`

	// The number of replicas of the Gallery Application Version to be created per region. Possible values are between 1 and 10.
	RegionalReplicaCount *float64 `json:"regionalReplicaCount,omitempty" tf:"regional_replica_count,omitempty"`

	// The storage account type for the Gallery Application Version. Possible values are Standard_LRS, Premium_LRS and Standard_ZRS. Defaults to Standard_LRS.
	StorageAccountType *string `json:"storageAccountType,omitempty" tf:"storage_account_type,omitempty"`
}

func (*TargetRegionObservation) DeepCopy added in v0.28.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TargetRegionObservation.

func (*TargetRegionObservation) DeepCopyInto added in v0.28.0

func (in *TargetRegionObservation) DeepCopyInto(out *TargetRegionObservation)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type TargetRegionParameters added in v0.28.0

type TargetRegionParameters struct {

	// Specifies whether this Gallery Application Version should be excluded from the latest filter. If set to true, this Gallery Application Version won't be returned for the latest version. Defaults to false.
	// +kubebuilder:validation:Optional
	ExcludeFromLatest *bool `json:"excludeFromLatest,omitempty" tf:"exclude_from_latest,omitempty"`

	// The Azure Region in which the Gallery Application Version exists.
	// +crossplane:generate:reference:type=github.com/upbound/provider-azure/apis/compute/v1beta1.GalleryApplication
	// +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractParamPath("location",false)
	// +kubebuilder:validation:Optional
	Name *string `json:"name,omitempty" tf:"name,omitempty"`

	// Reference to a GalleryApplication in compute to populate name.
	// +kubebuilder:validation:Optional
	NameRef *v1.Reference `json:"nameRef,omitempty" tf:"-"`

	// Selector for a GalleryApplication in compute to populate name.
	// +kubebuilder:validation:Optional
	NameSelector *v1.Selector `json:"nameSelector,omitempty" tf:"-"`

	// The number of replicas of the Gallery Application Version to be created per region. Possible values are between 1 and 10.
	// +kubebuilder:validation:Optional
	RegionalReplicaCount *float64 `json:"regionalReplicaCount" tf:"regional_replica_count,omitempty"`

	// The storage account type for the Gallery Application Version. Possible values are Standard_LRS, Premium_LRS and Standard_ZRS. Defaults to Standard_LRS.
	// +kubebuilder:validation:Optional
	StorageAccountType *string `json:"storageAccountType,omitempty" tf:"storage_account_type,omitempty"`
}

func (*TargetRegionParameters) DeepCopy added in v0.28.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TargetRegionParameters.

func (*TargetRegionParameters) DeepCopyInto added in v0.28.0

func (in *TargetRegionParameters) DeepCopyInto(out *TargetRegionParameters)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type TerminateNotificationInitParameters added in v0.35.0

type TerminateNotificationInitParameters struct {

	// Should the terminate notification be enabled on this Virtual Machine Scale Set?
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// Length of time (in minutes, between 5 and 15) a notification to be sent to the VM on the instance metadata server till the VM gets deleted. The time duration should be specified in ISO 8601 format. Defaults to PT5M.
	Timeout *string `json:"timeout,omitempty" tf:"timeout,omitempty"`
}

func (*TerminateNotificationInitParameters) DeepCopy added in v0.35.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TerminateNotificationInitParameters.

func (*TerminateNotificationInitParameters) DeepCopyInto added in v0.35.0

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type TerminateNotificationObservation

type TerminateNotificationObservation struct {

	// Should the terminate notification be enabled on this Virtual Machine Scale Set?
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// Length of time (in minutes, between 5 and 15) a notification to be sent to the VM on the instance metadata server till the VM gets deleted. The time duration should be specified in ISO 8601 format. Defaults to PT5M.
	Timeout *string `json:"timeout,omitempty" tf:"timeout,omitempty"`
}

func (*TerminateNotificationObservation) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TerminateNotificationObservation.

func (*TerminateNotificationObservation) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type TerminateNotificationParameters

type TerminateNotificationParameters struct {

	// Should the terminate notification be enabled on this Virtual Machine Scale Set?
	// +kubebuilder:validation:Optional
	Enabled *bool `json:"enabled" tf:"enabled,omitempty"`

	// Length of time (in minutes, between 5 and 15) a notification to be sent to the VM on the instance metadata server till the VM gets deleted. The time duration should be specified in ISO 8601 format. Defaults to PT5M.
	// +kubebuilder:validation:Optional
	Timeout *string `json:"timeout,omitempty" tf:"timeout,omitempty"`
}

func (*TerminateNotificationParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TerminateNotificationParameters.

func (*TerminateNotificationParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type TerminationNotificationInitParameters added in v0.35.0

type TerminationNotificationInitParameters struct {

	// Should the termination notification be enabled on this Virtual Machine?
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// Length of time (in minutes, between 5 and 15) a notification to be sent to the VM on the instance metadata server till the VM gets deleted. The time duration should be specified in ISO 8601 format. Defaults to PT5M.
	Timeout *string `json:"timeout,omitempty" tf:"timeout,omitempty"`
}

func (*TerminationNotificationInitParameters) DeepCopy added in v0.35.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TerminationNotificationInitParameters.

func (*TerminationNotificationInitParameters) DeepCopyInto added in v0.35.0

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type TerminationNotificationObservation

type TerminationNotificationObservation struct {

	// Should the termination notification be enabled on this Virtual Machine?
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// Length of time (in minutes, between 5 and 15) a notification to be sent to the VM on the instance metadata server till the VM gets deleted. The time duration should be specified in ISO 8601 format. Defaults to PT5M.
	Timeout *string `json:"timeout,omitempty" tf:"timeout,omitempty"`
}

func (*TerminationNotificationObservation) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TerminationNotificationObservation.

func (*TerminationNotificationObservation) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type TerminationNotificationParameters

type TerminationNotificationParameters struct {

	// Should the termination notification be enabled on this Virtual Machine?
	// +kubebuilder:validation:Optional
	Enabled *bool `json:"enabled" tf:"enabled,omitempty"`

	// Length of time (in minutes, between 5 and 15) a notification to be sent to the VM on the instance metadata server till the VM gets deleted. The time duration should be specified in ISO 8601 format. Defaults to PT5M.
	// +kubebuilder:validation:Optional
	Timeout *string `json:"timeout,omitempty" tf:"timeout,omitempty"`
}

func (*TerminationNotificationParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TerminationNotificationParameters.

func (*TerminationNotificationParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type VirtualMachineDataDiskAttachment added in v0.39.0

type VirtualMachineDataDiskAttachment 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.caching) || (has(self.initProvider) && has(self.initProvider.caching))",message="spec.forProvider.caching is a required parameter"
	// +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.lun) || (has(self.initProvider) && has(self.initProvider.lun))",message="spec.forProvider.lun is a required parameter"
	Spec   VirtualMachineDataDiskAttachmentSpec   `json:"spec"`
	Status VirtualMachineDataDiskAttachmentStatus `json:"status,omitempty"`
}

VirtualMachineDataDiskAttachment is the Schema for the VirtualMachineDataDiskAttachments API. Manages attaching a Disk to a Virtual Machine. +kubebuilder:printcolumn:name="SYNCED",type="string",JSONPath=".status.conditions[?(@.type=='Synced')].status" +kubebuilder:printcolumn:name="READY",type="string",JSONPath=".status.conditions[?(@.type=='Ready')].status" +kubebuilder:printcolumn:name="EXTERNAL-NAME",type="string",JSONPath=".metadata.annotations.crossplane\\.io/external-name" +kubebuilder:printcolumn:name="AGE",type="date",JSONPath=".metadata.creationTimestamp" +kubebuilder:resource:scope=Cluster,categories={crossplane,managed,azure}

func (*VirtualMachineDataDiskAttachment) DeepCopy added in v0.39.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VirtualMachineDataDiskAttachment.

func (*VirtualMachineDataDiskAttachment) DeepCopyInto added in v0.39.0

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*VirtualMachineDataDiskAttachment) DeepCopyObject added in v0.39.0

func (in *VirtualMachineDataDiskAttachment) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

func (*VirtualMachineDataDiskAttachment) GetCondition added in v0.39.0

GetCondition of this VirtualMachineDataDiskAttachment.

func (*VirtualMachineDataDiskAttachment) GetConnectionDetailsMapping added in v0.39.0

func (tr *VirtualMachineDataDiskAttachment) GetConnectionDetailsMapping() map[string]string

GetConnectionDetailsMapping for this VirtualMachineDataDiskAttachment

func (*VirtualMachineDataDiskAttachment) GetDeletionPolicy added in v0.39.0

func (mg *VirtualMachineDataDiskAttachment) GetDeletionPolicy() xpv1.DeletionPolicy

GetDeletionPolicy of this VirtualMachineDataDiskAttachment.

func (*VirtualMachineDataDiskAttachment) GetID added in v0.39.0

GetID returns ID of underlying Terraform resource of this VirtualMachineDataDiskAttachment

func (*VirtualMachineDataDiskAttachment) GetInitParameters added in v0.39.0

func (tr *VirtualMachineDataDiskAttachment) GetInitParameters() (map[string]any, error)

GetInitParameters of this VirtualMachineDataDiskAttachment

func (*VirtualMachineDataDiskAttachment) GetManagementPolicies added in v0.39.0

func (mg *VirtualMachineDataDiskAttachment) GetManagementPolicies() xpv1.ManagementPolicies

GetManagementPolicies of this VirtualMachineDataDiskAttachment.

func (*VirtualMachineDataDiskAttachment) GetMergedParameters added in v0.40.0

func (tr *VirtualMachineDataDiskAttachment) GetMergedParameters(shouldMergeInitProvider bool) (map[string]any, error)

GetInitParameters of this VirtualMachineDataDiskAttachment

func (*VirtualMachineDataDiskAttachment) GetObservation added in v0.39.0

func (tr *VirtualMachineDataDiskAttachment) GetObservation() (map[string]any, error)

GetObservation of this VirtualMachineDataDiskAttachment

func (*VirtualMachineDataDiskAttachment) GetParameters added in v0.39.0

func (tr *VirtualMachineDataDiskAttachment) GetParameters() (map[string]any, error)

GetParameters of this VirtualMachineDataDiskAttachment

func (*VirtualMachineDataDiskAttachment) GetProviderConfigReference added in v0.39.0

func (mg *VirtualMachineDataDiskAttachment) GetProviderConfigReference() *xpv1.Reference

GetProviderConfigReference of this VirtualMachineDataDiskAttachment.

func (*VirtualMachineDataDiskAttachment) GetPublishConnectionDetailsTo added in v0.39.0

func (mg *VirtualMachineDataDiskAttachment) GetPublishConnectionDetailsTo() *xpv1.PublishConnectionDetailsTo

GetPublishConnectionDetailsTo of this VirtualMachineDataDiskAttachment.

func (*VirtualMachineDataDiskAttachment) GetTerraformResourceType added in v0.39.0

func (mg *VirtualMachineDataDiskAttachment) GetTerraformResourceType() string

GetTerraformResourceType returns Terraform resource type for this VirtualMachineDataDiskAttachment

func (*VirtualMachineDataDiskAttachment) GetTerraformSchemaVersion added in v0.39.0

func (tr *VirtualMachineDataDiskAttachment) GetTerraformSchemaVersion() int

GetTerraformSchemaVersion returns the associated Terraform schema version

func (*VirtualMachineDataDiskAttachment) GetWriteConnectionSecretToReference added in v0.39.0

func (mg *VirtualMachineDataDiskAttachment) GetWriteConnectionSecretToReference() *xpv1.SecretReference

GetWriteConnectionSecretToReference of this VirtualMachineDataDiskAttachment.

func (*VirtualMachineDataDiskAttachment) Hub added in v0.42.1

Hub marks this type as a conversion hub.

func (*VirtualMachineDataDiskAttachment) LateInitialize added in v0.39.0

func (tr *VirtualMachineDataDiskAttachment) LateInitialize(attrs []byte) (bool, error)

LateInitialize this VirtualMachineDataDiskAttachment using its observed tfState. returns True if there are any spec changes for the resource.

func (*VirtualMachineDataDiskAttachment) ResolveReferences added in v0.39.0

func (mg *VirtualMachineDataDiskAttachment) ResolveReferences(ctx context.Context, c client.Reader) error

ResolveReferences of this VirtualMachineDataDiskAttachment.

func (*VirtualMachineDataDiskAttachment) SetConditions added in v0.39.0

func (mg *VirtualMachineDataDiskAttachment) SetConditions(c ...xpv1.Condition)

SetConditions of this VirtualMachineDataDiskAttachment.

func (*VirtualMachineDataDiskAttachment) SetDeletionPolicy added in v0.39.0

func (mg *VirtualMachineDataDiskAttachment) SetDeletionPolicy(r xpv1.DeletionPolicy)

SetDeletionPolicy of this VirtualMachineDataDiskAttachment.

func (*VirtualMachineDataDiskAttachment) SetManagementPolicies added in v0.39.0

func (mg *VirtualMachineDataDiskAttachment) SetManagementPolicies(r xpv1.ManagementPolicies)

SetManagementPolicies of this VirtualMachineDataDiskAttachment.

func (*VirtualMachineDataDiskAttachment) SetObservation added in v0.39.0

func (tr *VirtualMachineDataDiskAttachment) SetObservation(obs map[string]any) error

SetObservation for this VirtualMachineDataDiskAttachment

func (*VirtualMachineDataDiskAttachment) SetParameters added in v0.39.0

func (tr *VirtualMachineDataDiskAttachment) SetParameters(params map[string]any) error

SetParameters for this VirtualMachineDataDiskAttachment

func (*VirtualMachineDataDiskAttachment) SetProviderConfigReference added in v0.39.0

func (mg *VirtualMachineDataDiskAttachment) SetProviderConfigReference(r *xpv1.Reference)

SetProviderConfigReference of this VirtualMachineDataDiskAttachment.

func (*VirtualMachineDataDiskAttachment) SetPublishConnectionDetailsTo added in v0.39.0

func (mg *VirtualMachineDataDiskAttachment) SetPublishConnectionDetailsTo(r *xpv1.PublishConnectionDetailsTo)

SetPublishConnectionDetailsTo of this VirtualMachineDataDiskAttachment.

func (*VirtualMachineDataDiskAttachment) SetWriteConnectionSecretToReference added in v0.39.0

func (mg *VirtualMachineDataDiskAttachment) SetWriteConnectionSecretToReference(r *xpv1.SecretReference)

SetWriteConnectionSecretToReference of this VirtualMachineDataDiskAttachment.

type VirtualMachineDataDiskAttachmentInitParameters added in v0.39.0

type VirtualMachineDataDiskAttachmentInitParameters struct {

	// Specifies the caching requirements for this Data Disk. Possible values include None, ReadOnly and ReadWrite.
	Caching *string `json:"caching,omitempty" tf:"caching,omitempty"`

	// The Create Option of the Data Disk, such as Empty or Attach. Defaults to Attach. Changing this forces a new resource to be created.
	CreateOption *string `json:"createOption,omitempty" tf:"create_option,omitempty"`

	// The Logical Unit Number of the Data Disk, which needs to be unique within the Virtual Machine. Changing this forces a new resource to be created.
	Lun *float64 `json:"lun,omitempty" tf:"lun,omitempty"`

	// The ID of an existing Managed Disk which should be attached. Changing this forces a new resource to be created.
	// +crossplane:generate:reference:type=github.com/upbound/provider-azure/apis/compute/v1beta1.ManagedDisk
	// +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractResourceID()
	ManagedDiskID *string `json:"managedDiskId,omitempty" tf:"managed_disk_id,omitempty"`

	// Reference to a ManagedDisk in compute to populate managedDiskId.
	// +kubebuilder:validation:Optional
	ManagedDiskIDRef *v1.Reference `json:"managedDiskIdRef,omitempty" tf:"-"`

	// Selector for a ManagedDisk in compute to populate managedDiskId.
	// +kubebuilder:validation:Optional
	ManagedDiskIDSelector *v1.Selector `json:"managedDiskIdSelector,omitempty" tf:"-"`

	// The ID of the Virtual Machine to which the Data Disk should be attached. Changing this forces a new resource to be created.
	// +crossplane:generate:reference:type=github.com/upbound/provider-azure/apis/compute/v1beta1.LinuxVirtualMachine
	// +crossplane:generate:reference:extractor=github.com/upbound/provider-azure/apis/rconfig.ExtractResourceID()
	VirtualMachineID *string `json:"virtualMachineId,omitempty" tf:"virtual_machine_id,omitempty"`

	// Reference to a LinuxVirtualMachine in compute to populate virtualMachineId.
	// +kubebuilder:validation:Optional
	VirtualMachineIDRef *v1.Reference `json:"virtualMachineIdRef,omitempty" tf:"-"`

	// Selector for a LinuxVirtualMachine in compute to populate virtualMachineId.
	// +kubebuilder:validation:Optional
	VirtualMachineIDSelector *v1.Selector `json:"virtualMachineIdSelector,omitempty" tf:"-"`

	// Specifies if Write Accelerator is enabled on the disk. This can only be enabled on Premium_LRS managed disks with no caching and M-Series VMs. Defaults to false.
	WriteAcceleratorEnabled *bool `json:"writeAcceleratorEnabled,omitempty" tf:"write_accelerator_enabled,omitempty"`
}

func (*VirtualMachineDataDiskAttachmentInitParameters) DeepCopy added in v0.39.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VirtualMachineDataDiskAttachmentInitParameters.

func (*VirtualMachineDataDiskAttachmentInitParameters) DeepCopyInto added in v0.39.0

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type VirtualMachineDataDiskAttachmentList added in v0.39.0

type VirtualMachineDataDiskAttachmentList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	Items           []VirtualMachineDataDiskAttachment `json:"items"`
}

VirtualMachineDataDiskAttachmentList contains a list of VirtualMachineDataDiskAttachments

func (*VirtualMachineDataDiskAttachmentList) DeepCopy added in v0.39.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VirtualMachineDataDiskAttachmentList.

func (*VirtualMachineDataDiskAttachmentList) DeepCopyInto added in v0.39.0

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*VirtualMachineDataDiskAttachmentList) DeepCopyObject added in v0.39.0

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

func (*VirtualMachineDataDiskAttachmentList) GetItems added in v0.39.0

GetItems of this VirtualMachineDataDiskAttachmentList.

type VirtualMachineDataDiskAttachmentObservation added in v0.39.0

type VirtualMachineDataDiskAttachmentObservation struct {

	// Specifies the caching requirements for this Data Disk. Possible values include None, ReadOnly and ReadWrite.
	Caching *string `json:"caching,omitempty" tf:"caching,omitempty"`

	// The Create Option of the Data Disk, such as Empty or Attach. Defaults to Attach. Changing this forces a new resource to be created.
	CreateOption *string `json:"createOption,omitempty" tf:"create_option,omitempty"`

	// The ID of the Virtual Machine Data Disk attachment.
	ID *string `json:"id,omitempty" tf:"id,omitempty"`

	// The Logical Unit Number of the Data Disk, which needs to be unique within the Virtual Machine. Changing this forces a new resource to be created.
	Lun *float64 `json:"lun,omitempty" tf:"lun,omitempty"`

	// The ID of an existing Managed Disk which should be attached. Changing this forces a new resource to be created.
	ManagedDiskID *string `json:"managedDiskId,omitempty" tf:"managed_disk_id,omitempty"`

	// The ID of the Virtual Machine to which the Data Disk should be attached. Changing this forces a new resource to be created.
	VirtualMachineID *string `json:"virtualMachineId,omitempty" tf:"virtual_machine_id,omitempty"`

	// Specifies if Write Accelerator is enabled on the disk. This can only be enabled on Premium_LRS managed disks with no caching and M-Series VMs. Defaults to false.
	WriteAcceleratorEnabled *bool `json:"writeAcceleratorEnabled,omitempty" tf:"write_accelerator_enabled,omitempty"`
}

func (*VirtualMachineDataDiskAttachmentObservation) DeepCopy added in v0.39.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VirtualMachineDataDiskAttachmentObservation.

func (*VirtualMachineDataDiskAttachmentObservation) DeepCopyInto added in v0.39.0

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type VirtualMachineDataDiskAttachmentParameters added in v0.39.0

type VirtualMachineDataDiskAttachmentParameters struct {

	// Specifies the caching requirements for this Data Disk. Possible values include None, ReadOnly and ReadWrite.
	// +kubebuilder:validation:Optional
	Caching *string `json:"caching,omitempty" tf:"caching,omitempty"`

	// The Create Option of the Data Disk, such as Empty or Attach. Defaults to Attach. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	CreateOption *string `json:"createOption,omitempty" tf:"create_option,omitempty"`

	// The Logical Unit Number of the Data Disk, which needs to be unique within the Virtual Machine. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	Lun *float64 `json:"lun,omitempty" tf:"lun,omitempty"`

	// The ID of an existing Managed Disk which should be attached. Changing this forces a new resource to be created.
	// +crossplane:generate:reference:type=github.com/upbound/provider-azure/apis/compute/v1beta1.ManagedDisk
	// +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractResourceID()
	// +kubebuilder:validation:Optional
	ManagedDiskID *string `json:"managedDiskId,omitempty" tf:"managed_disk_id,omitempty"`

	// Reference to a ManagedDisk in compute to populate managedDiskId.
	// +kubebuilder:validation:Optional
	ManagedDiskIDRef *v1.Reference `json:"managedDiskIdRef,omitempty" tf:"-"`

	// Selector for a ManagedDisk in compute to populate managedDiskId.
	// +kubebuilder:validation:Optional
	ManagedDiskIDSelector *v1.Selector `json:"managedDiskIdSelector,omitempty" tf:"-"`

	// The ID of the Virtual Machine to which the Data Disk should be attached. Changing this forces a new resource to be created.
	// +crossplane:generate:reference:type=github.com/upbound/provider-azure/apis/compute/v1beta1.LinuxVirtualMachine
	// +crossplane:generate:reference:extractor=github.com/upbound/provider-azure/apis/rconfig.ExtractResourceID()
	// +kubebuilder:validation:Optional
	VirtualMachineID *string `json:"virtualMachineId,omitempty" tf:"virtual_machine_id,omitempty"`

	// Reference to a LinuxVirtualMachine in compute to populate virtualMachineId.
	// +kubebuilder:validation:Optional
	VirtualMachineIDRef *v1.Reference `json:"virtualMachineIdRef,omitempty" tf:"-"`

	// Selector for a LinuxVirtualMachine in compute to populate virtualMachineId.
	// +kubebuilder:validation:Optional
	VirtualMachineIDSelector *v1.Selector `json:"virtualMachineIdSelector,omitempty" tf:"-"`

	// Specifies if Write Accelerator is enabled on the disk. This can only be enabled on Premium_LRS managed disks with no caching and M-Series VMs. Defaults to false.
	// +kubebuilder:validation:Optional
	WriteAcceleratorEnabled *bool `json:"writeAcceleratorEnabled,omitempty" tf:"write_accelerator_enabled,omitempty"`
}

func (*VirtualMachineDataDiskAttachmentParameters) DeepCopy added in v0.39.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VirtualMachineDataDiskAttachmentParameters.

func (*VirtualMachineDataDiskAttachmentParameters) DeepCopyInto added in v0.39.0

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type VirtualMachineDataDiskAttachmentSpec added in v0.39.0

type VirtualMachineDataDiskAttachmentSpec struct {
	v1.ResourceSpec `json:",inline"`
	ForProvider     VirtualMachineDataDiskAttachmentParameters `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 VirtualMachineDataDiskAttachmentInitParameters `json:"initProvider,omitempty"`
}

VirtualMachineDataDiskAttachmentSpec defines the desired state of VirtualMachineDataDiskAttachment

func (*VirtualMachineDataDiskAttachmentSpec) DeepCopy added in v0.39.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VirtualMachineDataDiskAttachmentSpec.

func (*VirtualMachineDataDiskAttachmentSpec) DeepCopyInto added in v0.39.0

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type VirtualMachineDataDiskAttachmentStatus added in v0.39.0

type VirtualMachineDataDiskAttachmentStatus struct {
	v1.ResourceStatus `json:",inline"`
	AtProvider        VirtualMachineDataDiskAttachmentObservation `json:"atProvider,omitempty"`
}

VirtualMachineDataDiskAttachmentStatus defines the observed state of VirtualMachineDataDiskAttachment.

func (*VirtualMachineDataDiskAttachmentStatus) DeepCopy added in v0.39.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VirtualMachineDataDiskAttachmentStatus.

func (*VirtualMachineDataDiskAttachmentStatus) DeepCopyInto added in v0.39.0

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type VirtualMachineExtension added in v0.37.0

type VirtualMachineExtension 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.publisher) || (has(self.initProvider) && has(self.initProvider.publisher))",message="spec.forProvider.publisher is a required parameter"
	// +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.type) || (has(self.initProvider) && has(self.initProvider.type))",message="spec.forProvider.type is a required parameter"
	// +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.typeHandlerVersion) || (has(self.initProvider) && has(self.initProvider.typeHandlerVersion))",message="spec.forProvider.typeHandlerVersion is a required parameter"
	Spec   VirtualMachineExtensionSpec   `json:"spec"`
	Status VirtualMachineExtensionStatus `json:"status,omitempty"`
}

VirtualMachineExtension is the Schema for the VirtualMachineExtensions API. Manages a Virtual Machine Extension to provide post deployment configuration and run automated tasks. +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 (*VirtualMachineExtension) DeepCopy added in v0.37.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VirtualMachineExtension.

func (*VirtualMachineExtension) DeepCopyInto added in v0.37.0

func (in *VirtualMachineExtension) DeepCopyInto(out *VirtualMachineExtension)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*VirtualMachineExtension) DeepCopyObject added in v0.37.0

func (in *VirtualMachineExtension) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

func (*VirtualMachineExtension) GetCondition added in v0.37.0

GetCondition of this VirtualMachineExtension.

func (*VirtualMachineExtension) GetConnectionDetailsMapping added in v0.37.0

func (tr *VirtualMachineExtension) GetConnectionDetailsMapping() map[string]string

GetConnectionDetailsMapping for this VirtualMachineExtension

func (*VirtualMachineExtension) GetDeletionPolicy added in v0.37.0

func (mg *VirtualMachineExtension) GetDeletionPolicy() xpv1.DeletionPolicy

GetDeletionPolicy of this VirtualMachineExtension.

func (*VirtualMachineExtension) GetID added in v0.37.0

func (tr *VirtualMachineExtension) GetID() string

GetID returns ID of underlying Terraform resource of this VirtualMachineExtension

func (*VirtualMachineExtension) GetInitParameters added in v0.37.0

func (tr *VirtualMachineExtension) GetInitParameters() (map[string]any, error)

GetInitParameters of this VirtualMachineExtension

func (*VirtualMachineExtension) GetManagementPolicies added in v0.37.0

func (mg *VirtualMachineExtension) GetManagementPolicies() xpv1.ManagementPolicies

GetManagementPolicies of this VirtualMachineExtension.

func (*VirtualMachineExtension) GetMergedParameters added in v0.40.0

func (tr *VirtualMachineExtension) GetMergedParameters(shouldMergeInitProvider bool) (map[string]any, error)

GetInitParameters of this VirtualMachineExtension

func (*VirtualMachineExtension) GetObservation added in v0.37.0

func (tr *VirtualMachineExtension) GetObservation() (map[string]any, error)

GetObservation of this VirtualMachineExtension

func (*VirtualMachineExtension) GetParameters added in v0.37.0

func (tr *VirtualMachineExtension) GetParameters() (map[string]any, error)

GetParameters of this VirtualMachineExtension

func (*VirtualMachineExtension) GetProviderConfigReference added in v0.37.0

func (mg *VirtualMachineExtension) GetProviderConfigReference() *xpv1.Reference

GetProviderConfigReference of this VirtualMachineExtension.

func (*VirtualMachineExtension) GetPublishConnectionDetailsTo added in v0.37.0

func (mg *VirtualMachineExtension) GetPublishConnectionDetailsTo() *xpv1.PublishConnectionDetailsTo

GetPublishConnectionDetailsTo of this VirtualMachineExtension.

func (*VirtualMachineExtension) GetTerraformResourceType added in v0.37.0

func (mg *VirtualMachineExtension) GetTerraformResourceType() string

GetTerraformResourceType returns Terraform resource type for this VirtualMachineExtension

func (*VirtualMachineExtension) GetTerraformSchemaVersion added in v0.37.0

func (tr *VirtualMachineExtension) GetTerraformSchemaVersion() int

GetTerraformSchemaVersion returns the associated Terraform schema version

func (*VirtualMachineExtension) GetWriteConnectionSecretToReference added in v0.37.0

func (mg *VirtualMachineExtension) GetWriteConnectionSecretToReference() *xpv1.SecretReference

GetWriteConnectionSecretToReference of this VirtualMachineExtension.

func (*VirtualMachineExtension) Hub added in v0.42.1

func (tr *VirtualMachineExtension) Hub()

Hub marks this type as a conversion hub.

func (*VirtualMachineExtension) LateInitialize added in v0.37.0

func (tr *VirtualMachineExtension) LateInitialize(attrs []byte) (bool, error)

LateInitialize this VirtualMachineExtension using its observed tfState. returns True if there are any spec changes for the resource.

func (*VirtualMachineExtension) ResolveReferences added in v0.37.0

func (mg *VirtualMachineExtension) ResolveReferences(ctx context.Context, c client.Reader) error

ResolveReferences of this VirtualMachineExtension.

func (*VirtualMachineExtension) SetConditions added in v0.37.0

func (mg *VirtualMachineExtension) SetConditions(c ...xpv1.Condition)

SetConditions of this VirtualMachineExtension.

func (*VirtualMachineExtension) SetDeletionPolicy added in v0.37.0

func (mg *VirtualMachineExtension) SetDeletionPolicy(r xpv1.DeletionPolicy)

SetDeletionPolicy of this VirtualMachineExtension.

func (*VirtualMachineExtension) SetManagementPolicies added in v0.37.0

func (mg *VirtualMachineExtension) SetManagementPolicies(r xpv1.ManagementPolicies)

SetManagementPolicies of this VirtualMachineExtension.

func (*VirtualMachineExtension) SetObservation added in v0.37.0

func (tr *VirtualMachineExtension) SetObservation(obs map[string]any) error

SetObservation for this VirtualMachineExtension

func (*VirtualMachineExtension) SetParameters added in v0.37.0

func (tr *VirtualMachineExtension) SetParameters(params map[string]any) error

SetParameters for this VirtualMachineExtension

func (*VirtualMachineExtension) SetProviderConfigReference added in v0.37.0

func (mg *VirtualMachineExtension) SetProviderConfigReference(r *xpv1.Reference)

SetProviderConfigReference of this VirtualMachineExtension.

func (*VirtualMachineExtension) SetPublishConnectionDetailsTo added in v0.37.0

func (mg *VirtualMachineExtension) SetPublishConnectionDetailsTo(r *xpv1.PublishConnectionDetailsTo)

SetPublishConnectionDetailsTo of this VirtualMachineExtension.

func (*VirtualMachineExtension) SetWriteConnectionSecretToReference added in v0.37.0

func (mg *VirtualMachineExtension) SetWriteConnectionSecretToReference(r *xpv1.SecretReference)

SetWriteConnectionSecretToReference of this VirtualMachineExtension.

type VirtualMachineExtensionInitParameters added in v0.37.0

type VirtualMachineExtensionInitParameters struct {

	// Specifies if the platform deploys the latest minor version update to the type_handler_version specified.
	AutoUpgradeMinorVersion *bool `json:"autoUpgradeMinorVersion,omitempty" tf:"auto_upgrade_minor_version,omitempty"`

	// Should the Extension be automatically updated whenever the Publisher releases a new version of this VM Extension?
	AutomaticUpgradeEnabled *bool `json:"automaticUpgradeEnabled,omitempty" tf:"automatic_upgrade_enabled,omitempty"`

	// Should failures from the extension be suppressed? Possible values are true or false. Defaults to false.
	FailureSuppressionEnabled *bool `json:"failureSuppressionEnabled,omitempty" tf:"failure_suppression_enabled,omitempty"`

	// A protected_settings_from_key_vault block as defined below.
	ProtectedSettingsFromKeyVault []VirtualMachineExtensionProtectedSettingsFromKeyVaultInitParameters `json:"protectedSettingsFromKeyVault,omitempty" tf:"protected_settings_from_key_vault,omitempty"`

	// Specifies the collection of extension names after which this extension needs to be provisioned.
	ProvisionAfterExtensions []*string `json:"provisionAfterExtensions,omitempty" tf:"provision_after_extensions,omitempty"`

	// The publisher of the extension, available publishers can be found by using the Azure CLI. Changing this forces a new resource to be created.
	Publisher *string `json:"publisher,omitempty" tf:"publisher,omitempty"`

	// The settings passed to the extension, these are specified as a JSON object in a string.
	Settings *string `json:"settings,omitempty" tf:"settings,omitempty"`

	// A mapping of tags to assign to the resource.
	// +mapType=granular
	Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"`

	// The type of extension, available types for a publisher can be found using the Azure CLI.
	Type *string `json:"type,omitempty" tf:"type,omitempty"`

	// Specifies the version of the extension to use, available versions can be found using the Azure CLI.
	TypeHandlerVersion *string `json:"typeHandlerVersion,omitempty" tf:"type_handler_version,omitempty"`
}

func (*VirtualMachineExtensionInitParameters) DeepCopy added in v0.37.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VirtualMachineExtensionInitParameters.

func (*VirtualMachineExtensionInitParameters) DeepCopyInto added in v0.37.0

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type VirtualMachineExtensionList added in v0.37.0

type VirtualMachineExtensionList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	Items           []VirtualMachineExtension `json:"items"`
}

VirtualMachineExtensionList contains a list of VirtualMachineExtensions

func (*VirtualMachineExtensionList) DeepCopy added in v0.37.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VirtualMachineExtensionList.

func (*VirtualMachineExtensionList) DeepCopyInto added in v0.37.0

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*VirtualMachineExtensionList) DeepCopyObject added in v0.37.0

func (in *VirtualMachineExtensionList) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

func (*VirtualMachineExtensionList) GetItems added in v0.37.0

GetItems of this VirtualMachineExtensionList.

type VirtualMachineExtensionObservation added in v0.37.0

type VirtualMachineExtensionObservation struct {

	// Specifies if the platform deploys the latest minor version update to the type_handler_version specified.
	AutoUpgradeMinorVersion *bool `json:"autoUpgradeMinorVersion,omitempty" tf:"auto_upgrade_minor_version,omitempty"`

	// Should the Extension be automatically updated whenever the Publisher releases a new version of this VM Extension?
	AutomaticUpgradeEnabled *bool `json:"automaticUpgradeEnabled,omitempty" tf:"automatic_upgrade_enabled,omitempty"`

	// Should failures from the extension be suppressed? Possible values are true or false. Defaults to false.
	FailureSuppressionEnabled *bool `json:"failureSuppressionEnabled,omitempty" tf:"failure_suppression_enabled,omitempty"`

	// The ID of the Virtual Machine Extension.
	ID *string `json:"id,omitempty" tf:"id,omitempty"`

	// A protected_settings_from_key_vault block as defined below.
	ProtectedSettingsFromKeyVault []VirtualMachineExtensionProtectedSettingsFromKeyVaultObservation `json:"protectedSettingsFromKeyVault,omitempty" tf:"protected_settings_from_key_vault,omitempty"`

	// Specifies the collection of extension names after which this extension needs to be provisioned.
	ProvisionAfterExtensions []*string `json:"provisionAfterExtensions,omitempty" tf:"provision_after_extensions,omitempty"`

	// The publisher of the extension, available publishers can be found by using the Azure CLI. Changing this forces a new resource to be created.
	Publisher *string `json:"publisher,omitempty" tf:"publisher,omitempty"`

	// The settings passed to the extension, these are specified as a JSON object in a string.
	Settings *string `json:"settings,omitempty" tf:"settings,omitempty"`

	// A mapping of tags to assign to the resource.
	// +mapType=granular
	Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"`

	// The type of extension, available types for a publisher can be found using the Azure CLI.
	Type *string `json:"type,omitempty" tf:"type,omitempty"`

	// Specifies the version of the extension to use, available versions can be found using the Azure CLI.
	TypeHandlerVersion *string `json:"typeHandlerVersion,omitempty" tf:"type_handler_version,omitempty"`

	// The ID of the Virtual Machine. Changing this forces a new resource to be created
	VirtualMachineID *string `json:"virtualMachineId,omitempty" tf:"virtual_machine_id,omitempty"`
}

func (*VirtualMachineExtensionObservation) DeepCopy added in v0.37.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VirtualMachineExtensionObservation.

func (*VirtualMachineExtensionObservation) DeepCopyInto added in v0.37.0

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type VirtualMachineExtensionParameters added in v0.37.0

type VirtualMachineExtensionParameters struct {

	// Specifies if the platform deploys the latest minor version update to the type_handler_version specified.
	// +kubebuilder:validation:Optional
	AutoUpgradeMinorVersion *bool `json:"autoUpgradeMinorVersion,omitempty" tf:"auto_upgrade_minor_version,omitempty"`

	// Should the Extension be automatically updated whenever the Publisher releases a new version of this VM Extension?
	// +kubebuilder:validation:Optional
	AutomaticUpgradeEnabled *bool `json:"automaticUpgradeEnabled,omitempty" tf:"automatic_upgrade_enabled,omitempty"`

	// Should failures from the extension be suppressed? Possible values are true or false. Defaults to false.
	// +kubebuilder:validation:Optional
	FailureSuppressionEnabled *bool `json:"failureSuppressionEnabled,omitempty" tf:"failure_suppression_enabled,omitempty"`

	// A protected_settings_from_key_vault block as defined below.
	// +kubebuilder:validation:Optional
	ProtectedSettingsFromKeyVault []VirtualMachineExtensionProtectedSettingsFromKeyVaultParameters `json:"protectedSettingsFromKeyVault,omitempty" tf:"protected_settings_from_key_vault,omitempty"`

	// The protected_settings passed to the extension, like settings, these are specified as a JSON object in a string.
	// +kubebuilder:validation:Optional
	ProtectedSettingsSecretRef *v1.SecretKeySelector `json:"protectedSettingsSecretRef,omitempty" tf:"-"`

	// Specifies the collection of extension names after which this extension needs to be provisioned.
	// +kubebuilder:validation:Optional
	ProvisionAfterExtensions []*string `json:"provisionAfterExtensions,omitempty" tf:"provision_after_extensions,omitempty"`

	// The publisher of the extension, available publishers can be found by using the Azure CLI. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	Publisher *string `json:"publisher,omitempty" tf:"publisher,omitempty"`

	// The settings passed to the extension, these are specified as a JSON object in a string.
	// +kubebuilder:validation:Optional
	Settings *string `json:"settings,omitempty" tf:"settings,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"`

	// The type of extension, available types for a publisher can be found using the Azure CLI.
	// +kubebuilder:validation:Optional
	Type *string `json:"type,omitempty" tf:"type,omitempty"`

	// Specifies the version of the extension to use, available versions can be found using the Azure CLI.
	// +kubebuilder:validation:Optional
	TypeHandlerVersion *string `json:"typeHandlerVersion,omitempty" tf:"type_handler_version,omitempty"`

	// The ID of the Virtual Machine. Changing this forces a new resource to be created
	// +crossplane:generate:reference:type=github.com/upbound/provider-azure/apis/compute/v1beta1.LinuxVirtualMachine
	// +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractResourceID()
	// +kubebuilder:validation:Optional
	VirtualMachineID *string `json:"virtualMachineId,omitempty" tf:"virtual_machine_id,omitempty"`

	// Reference to a LinuxVirtualMachine in compute to populate virtualMachineId.
	// +kubebuilder:validation:Optional
	VirtualMachineIDRef *v1.Reference `json:"virtualMachineIdRef,omitempty" tf:"-"`

	// Selector for a LinuxVirtualMachine in compute to populate virtualMachineId.
	// +kubebuilder:validation:Optional
	VirtualMachineIDSelector *v1.Selector `json:"virtualMachineIdSelector,omitempty" tf:"-"`
}

func (*VirtualMachineExtensionParameters) DeepCopy added in v0.37.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VirtualMachineExtensionParameters.

func (*VirtualMachineExtensionParameters) DeepCopyInto added in v0.37.0

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type VirtualMachineExtensionProtectedSettingsFromKeyVaultInitParameters added in v0.37.0

type VirtualMachineExtensionProtectedSettingsFromKeyVaultInitParameters struct {

	// The URL to the Key Vault Secret which stores the protected settings.
	SecretURL *string `json:"secretUrl,omitempty" tf:"secret_url,omitempty"`

	// The ID of the source Key Vault.
	SourceVaultID *string `json:"sourceVaultId,omitempty" tf:"source_vault_id,omitempty"`
}

func (*VirtualMachineExtensionProtectedSettingsFromKeyVaultInitParameters) DeepCopy added in v0.37.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VirtualMachineExtensionProtectedSettingsFromKeyVaultInitParameters.

func (*VirtualMachineExtensionProtectedSettingsFromKeyVaultInitParameters) DeepCopyInto added in v0.37.0

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type VirtualMachineExtensionProtectedSettingsFromKeyVaultObservation added in v0.37.0

type VirtualMachineExtensionProtectedSettingsFromKeyVaultObservation struct {

	// The URL to the Key Vault Secret which stores the protected settings.
	SecretURL *string `json:"secretUrl,omitempty" tf:"secret_url,omitempty"`

	// The ID of the source Key Vault.
	SourceVaultID *string `json:"sourceVaultId,omitempty" tf:"source_vault_id,omitempty"`
}

func (*VirtualMachineExtensionProtectedSettingsFromKeyVaultObservation) DeepCopy added in v0.37.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VirtualMachineExtensionProtectedSettingsFromKeyVaultObservation.

func (*VirtualMachineExtensionProtectedSettingsFromKeyVaultObservation) DeepCopyInto added in v0.37.0

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type VirtualMachineExtensionProtectedSettingsFromKeyVaultParameters added in v0.37.0

type VirtualMachineExtensionProtectedSettingsFromKeyVaultParameters struct {

	// The URL to the Key Vault Secret which stores the protected settings.
	// +kubebuilder:validation:Optional
	SecretURL *string `json:"secretUrl" tf:"secret_url,omitempty"`

	// The ID of the source Key Vault.
	// +kubebuilder:validation:Optional
	SourceVaultID *string `json:"sourceVaultId" tf:"source_vault_id,omitempty"`
}

func (*VirtualMachineExtensionProtectedSettingsFromKeyVaultParameters) DeepCopy added in v0.37.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VirtualMachineExtensionProtectedSettingsFromKeyVaultParameters.

func (*VirtualMachineExtensionProtectedSettingsFromKeyVaultParameters) DeepCopyInto added in v0.37.0

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type VirtualMachineExtensionSpec added in v0.37.0

type VirtualMachineExtensionSpec struct {
	v1.ResourceSpec `json:",inline"`
	ForProvider     VirtualMachineExtensionParameters `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 VirtualMachineExtensionInitParameters `json:"initProvider,omitempty"`
}

VirtualMachineExtensionSpec defines the desired state of VirtualMachineExtension

func (*VirtualMachineExtensionSpec) DeepCopy added in v0.37.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VirtualMachineExtensionSpec.

func (*VirtualMachineExtensionSpec) DeepCopyInto added in v0.37.0

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type VirtualMachineExtensionStatus added in v0.37.0

type VirtualMachineExtensionStatus struct {
	v1.ResourceStatus `json:",inline"`
	AtProvider        VirtualMachineExtensionObservation `json:"atProvider,omitempty"`
}

VirtualMachineExtensionStatus defines the observed state of VirtualMachineExtension.

func (*VirtualMachineExtensionStatus) DeepCopy added in v0.37.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VirtualMachineExtensionStatus.

func (*VirtualMachineExtensionStatus) DeepCopyInto added in v0.37.0

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type WindowsConfigurationInitParameters added in v0.35.0

type WindowsConfigurationInitParameters struct {

	// One or more additional_unattend_content blocks as defined below. Changing this forces a new resource to be created.
	AdditionalUnattendContent []AdditionalUnattendContentInitParameters `json:"additionalUnattendContent,omitempty" tf:"additional_unattend_content,omitempty"`

	// The username of the local administrator on each Virtual Machine Scale Set instance. Changing this forces a new resource to be created.
	AdminUsername *string `json:"adminUsername,omitempty" tf:"admin_username,omitempty"`

	// The prefix which should be used for the name of the Virtual Machines in this Scale Set. If unspecified this defaults to the value for the name field. If the value of the name field is not a valid computer_name_prefix, then you must specify computer_name_prefix. Changing this forces a new resource to be created.
	ComputerNamePrefix *string `json:"computerNamePrefix,omitempty" tf:"computer_name_prefix,omitempty"`

	// Are automatic updates enabled for this Virtual Machine? Defaults to true.
	EnableAutomaticUpdates *bool `json:"enableAutomaticUpdates,omitempty" tf:"enable_automatic_updates,omitempty"`

	// Should the VM be patched without requiring a reboot? Possible values are true or false. Defaults to false. For more information about hot patching please see the product documentation.
	HotpatchingEnabled *bool `json:"hotpatchingEnabled,omitempty" tf:"hotpatching_enabled,omitempty"`

	// Specifies the mode of VM Guest Patching for the virtual machines that are associated to the Virtual Machine Scale Set. Possible values are AutomaticByPlatform or ImageDefault. Defaults to ImageDefault.
	PatchAssessmentMode *string `json:"patchAssessmentMode,omitempty" tf:"patch_assessment_mode,omitempty"`

	// Specifies the mode of in-guest patching of this Windows Virtual Machine. Possible values are Manual, AutomaticByOS and AutomaticByPlatform. Defaults to AutomaticByOS. For more information on patch modes please see the product documentation.
	PatchMode *string `json:"patchMode,omitempty" tf:"patch_mode,omitempty"`

	// Should the Azure VM Agent be provisioned on each Virtual Machine in the Scale Set? Defaults to true. Changing this value forces a new resource to be created.
	ProvisionVMAgent *bool `json:"provisionVmAgent,omitempty" tf:"provision_vm_agent,omitempty"`

	// One or more secret blocks as defined below.
	Secret []WindowsConfigurationSecretInitParameters `json:"secret,omitempty" tf:"secret,omitempty"`

	// Specifies the time zone of the virtual machine, the possible values are defined here.
	Timezone *string `json:"timezone,omitempty" tf:"timezone,omitempty"`

	// One or more winrm_listener blocks as defined below. Changing this forces a new resource to be created.
	WinrmListener []WinrmListenerInitParameters `json:"winrmListener,omitempty" tf:"winrm_listener,omitempty"`
}

func (*WindowsConfigurationInitParameters) DeepCopy added in v0.35.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsConfigurationInitParameters.

func (*WindowsConfigurationInitParameters) DeepCopyInto added in v0.35.0

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type WindowsConfigurationObservation

type WindowsConfigurationObservation struct {

	// One or more additional_unattend_content blocks as defined below. Changing this forces a new resource to be created.
	AdditionalUnattendContent []AdditionalUnattendContentObservation `json:"additionalUnattendContent,omitempty" tf:"additional_unattend_content,omitempty"`

	// The username of the local administrator on each Virtual Machine Scale Set instance. Changing this forces a new resource to be created.
	AdminUsername *string `json:"adminUsername,omitempty" tf:"admin_username,omitempty"`

	// The prefix which should be used for the name of the Virtual Machines in this Scale Set. If unspecified this defaults to the value for the name field. If the value of the name field is not a valid computer_name_prefix, then you must specify computer_name_prefix. Changing this forces a new resource to be created.
	ComputerNamePrefix *string `json:"computerNamePrefix,omitempty" tf:"computer_name_prefix,omitempty"`

	// Are automatic updates enabled for this Virtual Machine? Defaults to true.
	EnableAutomaticUpdates *bool `json:"enableAutomaticUpdates,omitempty" tf:"enable_automatic_updates,omitempty"`

	// Should the VM be patched without requiring a reboot? Possible values are true or false. Defaults to false. For more information about hot patching please see the product documentation.
	HotpatchingEnabled *bool `json:"hotpatchingEnabled,omitempty" tf:"hotpatching_enabled,omitempty"`

	// Specifies the mode of VM Guest Patching for the virtual machines that are associated to the Virtual Machine Scale Set. Possible values are AutomaticByPlatform or ImageDefault. Defaults to ImageDefault.
	PatchAssessmentMode *string `json:"patchAssessmentMode,omitempty" tf:"patch_assessment_mode,omitempty"`

	// Specifies the mode of in-guest patching of this Windows Virtual Machine. Possible values are Manual, AutomaticByOS and AutomaticByPlatform. Defaults to AutomaticByOS. For more information on patch modes please see the product documentation.
	PatchMode *string `json:"patchMode,omitempty" tf:"patch_mode,omitempty"`

	// Should the Azure VM Agent be provisioned on each Virtual Machine in the Scale Set? Defaults to true. Changing this value forces a new resource to be created.
	ProvisionVMAgent *bool `json:"provisionVmAgent,omitempty" tf:"provision_vm_agent,omitempty"`

	// One or more secret blocks as defined below.
	Secret []WindowsConfigurationSecretObservation `json:"secret,omitempty" tf:"secret,omitempty"`

	// Specifies the time zone of the virtual machine, the possible values are defined here.
	Timezone *string `json:"timezone,omitempty" tf:"timezone,omitempty"`

	// One or more winrm_listener blocks as defined below. Changing this forces a new resource to be created.
	WinrmListener []WinrmListenerObservation `json:"winrmListener,omitempty" tf:"winrm_listener,omitempty"`
}

func (*WindowsConfigurationObservation) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsConfigurationObservation.

func (*WindowsConfigurationObservation) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type WindowsConfigurationParameters

type WindowsConfigurationParameters struct {

	// One or more additional_unattend_content blocks as defined below. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	AdditionalUnattendContent []AdditionalUnattendContentParameters `json:"additionalUnattendContent,omitempty" tf:"additional_unattend_content,omitempty"`

	// The Password which should be used for the local-administrator on this Virtual Machine. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Required
	AdminPasswordSecretRef v1.SecretKeySelector `json:"adminPasswordSecretRef" tf:"-"`

	// The username of the local administrator on each Virtual Machine Scale Set instance. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	AdminUsername *string `json:"adminUsername" tf:"admin_username,omitempty"`

	// The prefix which should be used for the name of the Virtual Machines in this Scale Set. If unspecified this defaults to the value for the name field. If the value of the name field is not a valid computer_name_prefix, then you must specify computer_name_prefix. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	ComputerNamePrefix *string `json:"computerNamePrefix,omitempty" tf:"computer_name_prefix,omitempty"`

	// Are automatic updates enabled for this Virtual Machine? Defaults to true.
	// +kubebuilder:validation:Optional
	EnableAutomaticUpdates *bool `json:"enableAutomaticUpdates,omitempty" tf:"enable_automatic_updates,omitempty"`

	// Should the VM be patched without requiring a reboot? Possible values are true or false. Defaults to false. For more information about hot patching please see the product documentation.
	// +kubebuilder:validation:Optional
	HotpatchingEnabled *bool `json:"hotpatchingEnabled,omitempty" tf:"hotpatching_enabled,omitempty"`

	// Specifies the mode of VM Guest Patching for the virtual machines that are associated to the Virtual Machine Scale Set. Possible values are AutomaticByPlatform or ImageDefault. Defaults to ImageDefault.
	// +kubebuilder:validation:Optional
	PatchAssessmentMode *string `json:"patchAssessmentMode,omitempty" tf:"patch_assessment_mode,omitempty"`

	// Specifies the mode of in-guest patching of this Windows Virtual Machine. Possible values are Manual, AutomaticByOS and AutomaticByPlatform. Defaults to AutomaticByOS. For more information on patch modes please see the product documentation.
	// +kubebuilder:validation:Optional
	PatchMode *string `json:"patchMode,omitempty" tf:"patch_mode,omitempty"`

	// Should the Azure VM Agent be provisioned on each Virtual Machine in the Scale Set? Defaults to true. Changing this value forces a new resource to be created.
	// +kubebuilder:validation:Optional
	ProvisionVMAgent *bool `json:"provisionVmAgent,omitempty" tf:"provision_vm_agent,omitempty"`

	// One or more secret blocks as defined below.
	// +kubebuilder:validation:Optional
	Secret []WindowsConfigurationSecretParameters `json:"secret,omitempty" tf:"secret,omitempty"`

	// Specifies the time zone of the virtual machine, the possible values are defined here.
	// +kubebuilder:validation:Optional
	Timezone *string `json:"timezone,omitempty" tf:"timezone,omitempty"`

	// One or more winrm_listener blocks as defined below. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	WinrmListener []WinrmListenerParameters `json:"winrmListener,omitempty" tf:"winrm_listener,omitempty"`
}

func (*WindowsConfigurationParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsConfigurationParameters.

func (*WindowsConfigurationParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type WindowsConfigurationSecretCertificateInitParameters added in v0.35.0

type WindowsConfigurationSecretCertificateInitParameters struct {

	// The certificate store on the Virtual Machine where the certificate should be added.
	Store *string `json:"store,omitempty" tf:"store,omitempty"`

	// The Secret URL of a Key Vault Certificate.
	URL *string `json:"url,omitempty" tf:"url,omitempty"`
}

func (*WindowsConfigurationSecretCertificateInitParameters) DeepCopy added in v0.35.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsConfigurationSecretCertificateInitParameters.

func (*WindowsConfigurationSecretCertificateInitParameters) DeepCopyInto added in v0.35.0

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type WindowsConfigurationSecretCertificateObservation

type WindowsConfigurationSecretCertificateObservation struct {

	// The certificate store on the Virtual Machine where the certificate should be added.
	Store *string `json:"store,omitempty" tf:"store,omitempty"`

	// The Secret URL of a Key Vault Certificate.
	URL *string `json:"url,omitempty" tf:"url,omitempty"`
}

func (*WindowsConfigurationSecretCertificateObservation) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsConfigurationSecretCertificateObservation.

func (*WindowsConfigurationSecretCertificateObservation) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type WindowsConfigurationSecretCertificateParameters

type WindowsConfigurationSecretCertificateParameters struct {

	// The certificate store on the Virtual Machine where the certificate should be added.
	// +kubebuilder:validation:Optional
	Store *string `json:"store" tf:"store,omitempty"`

	// The Secret URL of a Key Vault Certificate.
	// +kubebuilder:validation:Optional
	URL *string `json:"url" tf:"url,omitempty"`
}

func (*WindowsConfigurationSecretCertificateParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsConfigurationSecretCertificateParameters.

func (*WindowsConfigurationSecretCertificateParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type WindowsConfigurationSecretInitParameters added in v0.35.0

type WindowsConfigurationSecretInitParameters struct {

	// One or more certificate blocks as defined below.
	Certificate []WindowsConfigurationSecretCertificateInitParameters `json:"certificate,omitempty" tf:"certificate,omitempty"`

	// The ID of the Key Vault from which all Secrets should be sourced.
	KeyVaultID *string `json:"keyVaultId,omitempty" tf:"key_vault_id,omitempty"`
}

func (*WindowsConfigurationSecretInitParameters) DeepCopy added in v0.35.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsConfigurationSecretInitParameters.

func (*WindowsConfigurationSecretInitParameters) DeepCopyInto added in v0.35.0

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type WindowsConfigurationSecretObservation

type WindowsConfigurationSecretObservation struct {

	// One or more certificate blocks as defined below.
	Certificate []WindowsConfigurationSecretCertificateObservation `json:"certificate,omitempty" tf:"certificate,omitempty"`

	// The ID of the Key Vault from which all Secrets should be sourced.
	KeyVaultID *string `json:"keyVaultId,omitempty" tf:"key_vault_id,omitempty"`
}

func (*WindowsConfigurationSecretObservation) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsConfigurationSecretObservation.

func (*WindowsConfigurationSecretObservation) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type WindowsConfigurationSecretParameters

type WindowsConfigurationSecretParameters struct {

	// One or more certificate blocks as defined below.
	// +kubebuilder:validation:Optional
	Certificate []WindowsConfigurationSecretCertificateParameters `json:"certificate" tf:"certificate,omitempty"`

	// The ID of the Key Vault from which all Secrets should be sourced.
	// +kubebuilder:validation:Optional
	KeyVaultID *string `json:"keyVaultId" tf:"key_vault_id,omitempty"`
}

func (*WindowsConfigurationSecretParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsConfigurationSecretParameters.

func (*WindowsConfigurationSecretParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type WindowsVirtualMachine

type WindowsVirtualMachine 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.adminPasswordSecretRef)",message="spec.forProvider.adminPasswordSecretRef is a required parameter"
	// +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.adminUsername) || (has(self.initProvider) && has(self.initProvider.adminUsername))",message="spec.forProvider.adminUsername is a required parameter"
	// +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || (has(self.initProvider) && has(self.initProvider.location))",message="spec.forProvider.location is a required parameter"
	// +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.osDisk) || (has(self.initProvider) && has(self.initProvider.osDisk))",message="spec.forProvider.osDisk is a required parameter"
	// +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.size) || (has(self.initProvider) && has(self.initProvider.size))",message="spec.forProvider.size is a required parameter"
	Spec   WindowsVirtualMachineSpec   `json:"spec"`
	Status WindowsVirtualMachineStatus `json:"status,omitempty"`
}

WindowsVirtualMachine is the Schema for the WindowsVirtualMachines API. Manages a Windows Virtual Machine. +kubebuilder:printcolumn:name="SYNCED",type="string",JSONPath=".status.conditions[?(@.type=='Synced')].status" +kubebuilder:printcolumn:name="READY",type="string",JSONPath=".status.conditions[?(@.type=='Ready')].status" +kubebuilder:printcolumn:name="EXTERNAL-NAME",type="string",JSONPath=".metadata.annotations.crossplane\\.io/external-name" +kubebuilder:printcolumn:name="AGE",type="date",JSONPath=".metadata.creationTimestamp" +kubebuilder:resource:scope=Cluster,categories={crossplane,managed,azure}

func (*WindowsVirtualMachine) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachine.

func (*WindowsVirtualMachine) DeepCopyInto

func (in *WindowsVirtualMachine) DeepCopyInto(out *WindowsVirtualMachine)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*WindowsVirtualMachine) DeepCopyObject

func (in *WindowsVirtualMachine) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

func (*WindowsVirtualMachine) GetCondition

func (mg *WindowsVirtualMachine) GetCondition(ct xpv1.ConditionType) xpv1.Condition

GetCondition of this WindowsVirtualMachine.

func (*WindowsVirtualMachine) GetConnectionDetailsMapping

func (tr *WindowsVirtualMachine) GetConnectionDetailsMapping() map[string]string

GetConnectionDetailsMapping for this WindowsVirtualMachine

func (*WindowsVirtualMachine) GetDeletionPolicy

func (mg *WindowsVirtualMachine) GetDeletionPolicy() xpv1.DeletionPolicy

GetDeletionPolicy of this WindowsVirtualMachine.

func (*WindowsVirtualMachine) GetID

func (tr *WindowsVirtualMachine) GetID() string

GetID returns ID of underlying Terraform resource of this WindowsVirtualMachine

func (*WindowsVirtualMachine) GetInitParameters added in v0.35.0

func (tr *WindowsVirtualMachine) GetInitParameters() (map[string]any, error)

GetInitParameters of this WindowsVirtualMachine

func (*WindowsVirtualMachine) GetManagementPolicies added in v0.35.0

func (mg *WindowsVirtualMachine) GetManagementPolicies() xpv1.ManagementPolicies

GetManagementPolicies of this WindowsVirtualMachine.

func (*WindowsVirtualMachine) GetMergedParameters added in v0.40.0

func (tr *WindowsVirtualMachine) GetMergedParameters(shouldMergeInitProvider bool) (map[string]any, error)

GetInitParameters of this WindowsVirtualMachine

func (*WindowsVirtualMachine) GetObservation

func (tr *WindowsVirtualMachine) GetObservation() (map[string]any, error)

GetObservation of this WindowsVirtualMachine

func (*WindowsVirtualMachine) GetParameters

func (tr *WindowsVirtualMachine) GetParameters() (map[string]any, error)

GetParameters of this WindowsVirtualMachine

func (*WindowsVirtualMachine) GetProviderConfigReference

func (mg *WindowsVirtualMachine) GetProviderConfigReference() *xpv1.Reference

GetProviderConfigReference of this WindowsVirtualMachine.

func (*WindowsVirtualMachine) GetPublishConnectionDetailsTo

func (mg *WindowsVirtualMachine) GetPublishConnectionDetailsTo() *xpv1.PublishConnectionDetailsTo

GetPublishConnectionDetailsTo of this WindowsVirtualMachine.

func (*WindowsVirtualMachine) GetTerraformResourceType

func (mg *WindowsVirtualMachine) GetTerraformResourceType() string

GetTerraformResourceType returns Terraform resource type for this WindowsVirtualMachine

func (*WindowsVirtualMachine) GetTerraformSchemaVersion

func (tr *WindowsVirtualMachine) GetTerraformSchemaVersion() int

GetTerraformSchemaVersion returns the associated Terraform schema version

func (*WindowsVirtualMachine) GetWriteConnectionSecretToReference

func (mg *WindowsVirtualMachine) GetWriteConnectionSecretToReference() *xpv1.SecretReference

GetWriteConnectionSecretToReference of this WindowsVirtualMachine.

func (*WindowsVirtualMachine) Hub added in v0.42.1

func (tr *WindowsVirtualMachine) Hub()

Hub marks this type as a conversion hub.

func (*WindowsVirtualMachine) LateInitialize

func (tr *WindowsVirtualMachine) LateInitialize(attrs []byte) (bool, error)

LateInitialize this WindowsVirtualMachine using its observed tfState. returns True if there are any spec changes for the resource.

func (*WindowsVirtualMachine) ResolveReferences

func (mg *WindowsVirtualMachine) ResolveReferences(ctx context.Context, c client.Reader) error

ResolveReferences of this WindowsVirtualMachine.

func (*WindowsVirtualMachine) SetConditions

func (mg *WindowsVirtualMachine) SetConditions(c ...xpv1.Condition)

SetConditions of this WindowsVirtualMachine.

func (*WindowsVirtualMachine) SetDeletionPolicy

func (mg *WindowsVirtualMachine) SetDeletionPolicy(r xpv1.DeletionPolicy)

SetDeletionPolicy of this WindowsVirtualMachine.

func (*WindowsVirtualMachine) SetManagementPolicies added in v0.35.0

func (mg *WindowsVirtualMachine) SetManagementPolicies(r xpv1.ManagementPolicies)

SetManagementPolicies of this WindowsVirtualMachine.

func (*WindowsVirtualMachine) SetObservation

func (tr *WindowsVirtualMachine) SetObservation(obs map[string]any) error

SetObservation for this WindowsVirtualMachine

func (*WindowsVirtualMachine) SetParameters

func (tr *WindowsVirtualMachine) SetParameters(params map[string]any) error

SetParameters for this WindowsVirtualMachine

func (*WindowsVirtualMachine) SetProviderConfigReference

func (mg *WindowsVirtualMachine) SetProviderConfigReference(r *xpv1.Reference)

SetProviderConfigReference of this WindowsVirtualMachine.

func (*WindowsVirtualMachine) SetPublishConnectionDetailsTo

func (mg *WindowsVirtualMachine) SetPublishConnectionDetailsTo(r *xpv1.PublishConnectionDetailsTo)

SetPublishConnectionDetailsTo of this WindowsVirtualMachine.

func (*WindowsVirtualMachine) SetWriteConnectionSecretToReference

func (mg *WindowsVirtualMachine) SetWriteConnectionSecretToReference(r *xpv1.SecretReference)

SetWriteConnectionSecretToReference of this WindowsVirtualMachine.

type WindowsVirtualMachineAdditionalCapabilitiesInitParameters added in v0.35.0

type WindowsVirtualMachineAdditionalCapabilitiesInitParameters struct {

	// Should the capacity to enable Data Disks of the UltraSSD_LRS storage account type be supported on this Virtual Machine? Defaults to false.
	UltraSsdEnabled *bool `json:"ultraSsdEnabled,omitempty" tf:"ultra_ssd_enabled,omitempty"`
}

func (*WindowsVirtualMachineAdditionalCapabilitiesInitParameters) DeepCopy added in v0.35.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineAdditionalCapabilitiesInitParameters.

func (*WindowsVirtualMachineAdditionalCapabilitiesInitParameters) DeepCopyInto added in v0.35.0

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type WindowsVirtualMachineAdditionalCapabilitiesObservation

type WindowsVirtualMachineAdditionalCapabilitiesObservation struct {

	// Should the capacity to enable Data Disks of the UltraSSD_LRS storage account type be supported on this Virtual Machine? Defaults to false.
	UltraSsdEnabled *bool `json:"ultraSsdEnabled,omitempty" tf:"ultra_ssd_enabled,omitempty"`
}

func (*WindowsVirtualMachineAdditionalCapabilitiesObservation) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineAdditionalCapabilitiesObservation.

func (*WindowsVirtualMachineAdditionalCapabilitiesObservation) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type WindowsVirtualMachineAdditionalCapabilitiesParameters

type WindowsVirtualMachineAdditionalCapabilitiesParameters struct {

	// Should the capacity to enable Data Disks of the UltraSSD_LRS storage account type be supported on this Virtual Machine? Defaults to false.
	// +kubebuilder:validation:Optional
	UltraSsdEnabled *bool `json:"ultraSsdEnabled,omitempty" tf:"ultra_ssd_enabled,omitempty"`
}

func (*WindowsVirtualMachineAdditionalCapabilitiesParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineAdditionalCapabilitiesParameters.

func (*WindowsVirtualMachineAdditionalCapabilitiesParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type WindowsVirtualMachineAdditionalUnattendContentInitParameters added in v1.0.0

type WindowsVirtualMachineAdditionalUnattendContentInitParameters struct {

	// The name of the setting to which the content applies. Possible values are AutoLogon and FirstLogonCommands. Changing this forces a new resource to be created.
	Setting *string `json:"setting,omitempty" tf:"setting,omitempty"`
}

func (*WindowsVirtualMachineAdditionalUnattendContentInitParameters) DeepCopy added in v1.0.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineAdditionalUnattendContentInitParameters.

func (*WindowsVirtualMachineAdditionalUnattendContentInitParameters) DeepCopyInto added in v1.0.0

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type WindowsVirtualMachineAdditionalUnattendContentObservation added in v1.0.0

type WindowsVirtualMachineAdditionalUnattendContentObservation struct {

	// The name of the setting to which the content applies. Possible values are AutoLogon and FirstLogonCommands. Changing this forces a new resource to be created.
	Setting *string `json:"setting,omitempty" tf:"setting,omitempty"`
}

func (*WindowsVirtualMachineAdditionalUnattendContentObservation) DeepCopy added in v1.0.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineAdditionalUnattendContentObservation.

func (*WindowsVirtualMachineAdditionalUnattendContentObservation) DeepCopyInto added in v1.0.0

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type WindowsVirtualMachineAdditionalUnattendContentParameters added in v1.0.0

type WindowsVirtualMachineAdditionalUnattendContentParameters struct {

	// The XML formatted content that is added to the unattend.xml file for the specified path and component. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Required
	ContentSecretRef v1.SecretKeySelector `json:"contentSecretRef" tf:"-"`

	// The name of the setting to which the content applies. Possible values are AutoLogon and FirstLogonCommands. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	Setting *string `json:"setting" tf:"setting,omitempty"`
}

func (*WindowsVirtualMachineAdditionalUnattendContentParameters) DeepCopy added in v1.0.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineAdditionalUnattendContentParameters.

func (*WindowsVirtualMachineAdditionalUnattendContentParameters) DeepCopyInto added in v1.0.0

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type WindowsVirtualMachineBootDiagnosticsInitParameters added in v0.35.0

type WindowsVirtualMachineBootDiagnosticsInitParameters struct {

	// The Primary/Secondary Endpoint for the Azure Storage Account which should be used to store Boot Diagnostics, including Console Output and Screenshots from the Hypervisor.
	StorageAccountURI *string `json:"storageAccountUri,omitempty" tf:"storage_account_uri,omitempty"`
}

func (*WindowsVirtualMachineBootDiagnosticsInitParameters) DeepCopy added in v0.35.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineBootDiagnosticsInitParameters.

func (*WindowsVirtualMachineBootDiagnosticsInitParameters) DeepCopyInto added in v0.35.0

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type WindowsVirtualMachineBootDiagnosticsObservation

type WindowsVirtualMachineBootDiagnosticsObservation struct {

	// The Primary/Secondary Endpoint for the Azure Storage Account which should be used to store Boot Diagnostics, including Console Output and Screenshots from the Hypervisor.
	StorageAccountURI *string `json:"storageAccountUri,omitempty" tf:"storage_account_uri,omitempty"`
}

func (*WindowsVirtualMachineBootDiagnosticsObservation) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineBootDiagnosticsObservation.

func (*WindowsVirtualMachineBootDiagnosticsObservation) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type WindowsVirtualMachineBootDiagnosticsParameters

type WindowsVirtualMachineBootDiagnosticsParameters struct {

	// The Primary/Secondary Endpoint for the Azure Storage Account which should be used to store Boot Diagnostics, including Console Output and Screenshots from the Hypervisor.
	// +kubebuilder:validation:Optional
	StorageAccountURI *string `json:"storageAccountUri,omitempty" tf:"storage_account_uri,omitempty"`
}

func (*WindowsVirtualMachineBootDiagnosticsParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineBootDiagnosticsParameters.

func (*WindowsVirtualMachineBootDiagnosticsParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type WindowsVirtualMachineGalleryApplicationInitParameters added in v0.35.0

type WindowsVirtualMachineGalleryApplicationInitParameters struct {

	// Specifies whether the version will be automatically updated for the VM when a new Gallery Application version is available in PIR/SIG. Defaults to false.
	AutomaticUpgradeEnabled *bool `json:"automaticUpgradeEnabled,omitempty" tf:"automatic_upgrade_enabled,omitempty"`

	// Specifies the URI to an Azure Blob that will replace the default configuration for the package if provided.
	ConfigurationBlobURI *string `json:"configurationBlobUri,omitempty" tf:"configuration_blob_uri,omitempty"`

	// Specifies the order in which the packages have to be installed. Possible values are between 0 and 2,147,483,647.
	Order *float64 `json:"order,omitempty" tf:"order,omitempty"`

	// Specifies a passthrough value for more generic context. This field can be any valid string value.
	Tag *string `json:"tag,omitempty" tf:"tag,omitempty"`

	// Specifies whether any failure for any operation in the VmApplication will fail the deployment of the VM. Defaults to false.
	TreatFailureAsDeploymentFailureEnabled *bool `json:"treatFailureAsDeploymentFailureEnabled,omitempty" tf:"treat_failure_as_deployment_failure_enabled,omitempty"`

	// Specifies the Gallery Application Version resource ID.
	VersionID *string `json:"versionId,omitempty" tf:"version_id,omitempty"`
}

func (*WindowsVirtualMachineGalleryApplicationInitParameters) DeepCopy added in v0.35.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineGalleryApplicationInitParameters.

func (*WindowsVirtualMachineGalleryApplicationInitParameters) DeepCopyInto added in v0.35.0

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type WindowsVirtualMachineGalleryApplicationObservation added in v0.26.0

type WindowsVirtualMachineGalleryApplicationObservation struct {

	// Specifies whether the version will be automatically updated for the VM when a new Gallery Application version is available in PIR/SIG. Defaults to false.
	AutomaticUpgradeEnabled *bool `json:"automaticUpgradeEnabled,omitempty" tf:"automatic_upgrade_enabled,omitempty"`

	// Specifies the URI to an Azure Blob that will replace the default configuration for the package if provided.
	ConfigurationBlobURI *string `json:"configurationBlobUri,omitempty" tf:"configuration_blob_uri,omitempty"`

	// Specifies the order in which the packages have to be installed. Possible values are between 0 and 2,147,483,647.
	Order *float64 `json:"order,omitempty" tf:"order,omitempty"`

	// Specifies a passthrough value for more generic context. This field can be any valid string value.
	Tag *string `json:"tag,omitempty" tf:"tag,omitempty"`

	// Specifies whether any failure for any operation in the VmApplication will fail the deployment of the VM. Defaults to false.
	TreatFailureAsDeploymentFailureEnabled *bool `json:"treatFailureAsDeploymentFailureEnabled,omitempty" tf:"treat_failure_as_deployment_failure_enabled,omitempty"`

	// Specifies the Gallery Application Version resource ID.
	VersionID *string `json:"versionId,omitempty" tf:"version_id,omitempty"`
}

func (*WindowsVirtualMachineGalleryApplicationObservation) DeepCopy added in v0.26.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineGalleryApplicationObservation.

func (*WindowsVirtualMachineGalleryApplicationObservation) DeepCopyInto added in v0.26.0

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type WindowsVirtualMachineGalleryApplicationParameters added in v0.26.0

type WindowsVirtualMachineGalleryApplicationParameters struct {

	// Specifies whether the version will be automatically updated for the VM when a new Gallery Application version is available in PIR/SIG. Defaults to false.
	// +kubebuilder:validation:Optional
	AutomaticUpgradeEnabled *bool `json:"automaticUpgradeEnabled,omitempty" tf:"automatic_upgrade_enabled,omitempty"`

	// Specifies the URI to an Azure Blob that will replace the default configuration for the package if provided.
	// +kubebuilder:validation:Optional
	ConfigurationBlobURI *string `json:"configurationBlobUri,omitempty" tf:"configuration_blob_uri,omitempty"`

	// Specifies the order in which the packages have to be installed. Possible values are between 0 and 2,147,483,647.
	// +kubebuilder:validation:Optional
	Order *float64 `json:"order,omitempty" tf:"order,omitempty"`

	// Specifies a passthrough value for more generic context. This field can be any valid string value.
	// +kubebuilder:validation:Optional
	Tag *string `json:"tag,omitempty" tf:"tag,omitempty"`

	// Specifies whether any failure for any operation in the VmApplication will fail the deployment of the VM. Defaults to false.
	// +kubebuilder:validation:Optional
	TreatFailureAsDeploymentFailureEnabled *bool `json:"treatFailureAsDeploymentFailureEnabled,omitempty" tf:"treat_failure_as_deployment_failure_enabled,omitempty"`

	// Specifies the Gallery Application Version resource ID.
	// +kubebuilder:validation:Optional
	VersionID *string `json:"versionId" tf:"version_id,omitempty"`
}

func (*WindowsVirtualMachineGalleryApplicationParameters) DeepCopy added in v0.26.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineGalleryApplicationParameters.

func (*WindowsVirtualMachineGalleryApplicationParameters) DeepCopyInto added in v0.26.0

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type WindowsVirtualMachineIdentityInitParameters added in v0.35.0

type WindowsVirtualMachineIdentityInitParameters struct {

	// Specifies a list of User Assigned Managed Identity IDs to be assigned to this Windows Virtual Machine.
	// +listType=set
	IdentityIds []*string `json:"identityIds,omitempty" tf:"identity_ids,omitempty"`

	// Specifies the type of Managed Service Identity that should be configured on this Windows Virtual Machine. Possible values are SystemAssigned, UserAssigned, SystemAssigned, UserAssigned (to enable both).
	Type *string `json:"type,omitempty" tf:"type,omitempty"`
}

func (*WindowsVirtualMachineIdentityInitParameters) DeepCopy added in v0.35.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineIdentityInitParameters.

func (*WindowsVirtualMachineIdentityInitParameters) DeepCopyInto added in v0.35.0

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type WindowsVirtualMachineIdentityObservation

type WindowsVirtualMachineIdentityObservation struct {

	// Specifies a list of User Assigned Managed Identity IDs to be assigned to this Windows Virtual Machine.
	// +listType=set
	IdentityIds []*string `json:"identityIds,omitempty" tf:"identity_ids,omitempty"`

	// 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 Windows Virtual Machine. Possible values are SystemAssigned, UserAssigned, SystemAssigned, UserAssigned (to enable both).
	Type *string `json:"type,omitempty" tf:"type,omitempty"`
}

func (*WindowsVirtualMachineIdentityObservation) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineIdentityObservation.

func (*WindowsVirtualMachineIdentityObservation) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type WindowsVirtualMachineIdentityParameters

type WindowsVirtualMachineIdentityParameters struct {

	// Specifies a list of User Assigned Managed Identity IDs to be assigned to this Windows Virtual Machine.
	// +kubebuilder:validation:Optional
	// +listType=set
	IdentityIds []*string `json:"identityIds,omitempty" tf:"identity_ids,omitempty"`

	// Specifies the type of Managed Service Identity that should be configured on this Windows Virtual Machine. Possible values are SystemAssigned, UserAssigned, SystemAssigned, UserAssigned (to enable both).
	// +kubebuilder:validation:Optional
	Type *string `json:"type" tf:"type,omitempty"`
}

func (*WindowsVirtualMachineIdentityParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineIdentityParameters.

func (*WindowsVirtualMachineIdentityParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type WindowsVirtualMachineInitParameters added in v0.35.0

type WindowsVirtualMachineInitParameters struct {

	// A additional_capabilities block as defined below.
	AdditionalCapabilities []WindowsVirtualMachineAdditionalCapabilitiesInitParameters `json:"additionalCapabilities,omitempty" tf:"additional_capabilities,omitempty"`

	// One or more additional_unattend_content blocks as defined below. Changing this forces a new resource to be created.
	AdditionalUnattendContent []WindowsVirtualMachineAdditionalUnattendContentInitParameters `json:"additionalUnattendContent,omitempty" tf:"additional_unattend_content,omitempty"`

	// The username of the local administrator used for the Virtual Machine. Changing this forces a new resource to be created.
	AdminUsername *string `json:"adminUsername,omitempty" tf:"admin_username,omitempty"`

	// Should Extension Operations be allowed on this Virtual Machine? Defaults to true.
	AllowExtensionOperations *bool `json:"allowExtensionOperations,omitempty" tf:"allow_extension_operations,omitempty"`

	// Specifies the ID of the Availability Set in which the Virtual Machine should exist. Changing this forces a new resource to be created.
	AvailabilitySetID *string `json:"availabilitySetId,omitempty" tf:"availability_set_id,omitempty"`

	// A boot_diagnostics block as defined below.
	BootDiagnostics []WindowsVirtualMachineBootDiagnosticsInitParameters `json:"bootDiagnostics,omitempty" tf:"boot_diagnostics,omitempty"`

	// Specifies whether to skip platform scheduled patching when a user schedule is associated with the VM. Defaults to false.
	BypassPlatformSafetyChecksOnUserScheduleEnabled *bool `` /* 134-byte string literal not displayed */

	// Specifies the ID of the Capacity Reservation Group which the Virtual Machine should be allocated to.
	CapacityReservationGroupID *string `json:"capacityReservationGroupId,omitempty" tf:"capacity_reservation_group_id,omitempty"`

	// Specifies the Hostname which should be used for this Virtual Machine. If unspecified this defaults to the value for the name field. If the value of the name field is not a valid computer_name, then you must specify computer_name. Changing this forces a new resource to be created.
	ComputerName *string `json:"computerName,omitempty" tf:"computer_name,omitempty"`

	// The ID of a Dedicated Host Group that this Windows Virtual Machine should be run within. Conflicts with dedicated_host_id.
	DedicatedHostGroupID *string `json:"dedicatedHostGroupId,omitempty" tf:"dedicated_host_group_id,omitempty"`

	// The ID of a Dedicated Host where this machine should be run on. Conflicts with dedicated_host_group_id.
	DedicatedHostID *string `json:"dedicatedHostId,omitempty" tf:"dedicated_host_id,omitempty"`

	// Specifies the Disk Controller Type used for this Virtual Machine. Possible values are SCSI and NVMe.
	DiskControllerType *string `json:"diskControllerType,omitempty" tf:"disk_controller_type,omitempty"`

	// Specifies the Edge Zone within the Azure Region where this Windows Virtual Machine should exist. Changing this forces a new Windows Virtual Machine to be created.
	EdgeZone *string `json:"edgeZone,omitempty" tf:"edge_zone,omitempty"`

	// Specifies if Automatic Updates are Enabled for the Windows Virtual Machine. Changing this forces a new resource to be created. Defaults to true.
	EnableAutomaticUpdates *bool `json:"enableAutomaticUpdates,omitempty" tf:"enable_automatic_updates,omitempty"`

	// Should all of the disks (including the temp disk) attached to this Virtual Machine be encrypted by enabling Encryption at Host?
	EncryptionAtHostEnabled *bool `json:"encryptionAtHostEnabled,omitempty" tf:"encryption_at_host_enabled,omitempty"`

	// Specifies what should happen when the Virtual Machine is evicted for price reasons when using a Spot instance. Possible values are Deallocate and Delete. Changing this forces a new resource to be created.
	EvictionPolicy *string `json:"evictionPolicy,omitempty" tf:"eviction_policy,omitempty"`

	// Specifies the duration allocated for all extensions to start. The time duration should be between 15 minutes and 120 minutes (inclusive) and should be specified in ISO 8601 format. Defaults to PT1H30M.
	ExtensionsTimeBudget *string `json:"extensionsTimeBudget,omitempty" tf:"extensions_time_budget,omitempty"`

	// One or more gallery_application blocks as defined below.
	GalleryApplication []WindowsVirtualMachineGalleryApplicationInitParameters `json:"galleryApplication,omitempty" tf:"gallery_application,omitempty"`

	// Should the VM be patched without requiring a reboot? Possible values are true or false. Defaults to false. For more information about hot patching please see the product documentation.
	HotpatchingEnabled *bool `json:"hotpatchingEnabled,omitempty" tf:"hotpatching_enabled,omitempty"`

	// An identity block as defined below.
	Identity []WindowsVirtualMachineIdentityInitParameters `json:"identity,omitempty" tf:"identity,omitempty"`

	// Specifies the type of on-premise license (also known as Azure Hybrid Use Benefit) which should be used for this Virtual Machine. Possible values are None, Windows_Client and Windows_Server.
	LicenseType *string `json:"licenseType,omitempty" tf:"license_type,omitempty"`

	// The Azure location where the Windows Virtual Machine should exist. Changing this forces a new resource to be created.
	Location *string `json:"location,omitempty" tf:"location,omitempty"`

	// The maximum price you're willing to pay for this Virtual Machine, in US Dollars; which must be greater than the current spot price. If this bid price falls below the current spot price the Virtual Machine will be evicted using the eviction_policy. Defaults to -1, which means that the Virtual Machine should not be evicted for price reasons.
	MaxBidPrice *float64 `json:"maxBidPrice,omitempty" tf:"max_bid_price,omitempty"`

	// . A list of Network Interface IDs which should be attached to this Virtual Machine. The first Network Interface ID in this list will be the Primary Network Interface on the Virtual Machine.
	// +crossplane:generate:reference:type=github.com/upbound/provider-azure/apis/network/v1beta1.NetworkInterface
	// +crossplane:generate:reference:extractor=github.com/upbound/provider-azure/apis/rconfig.ExtractResourceID()
	NetworkInterfaceIds []*string `json:"networkInterfaceIds,omitempty" tf:"network_interface_ids,omitempty"`

	// References to NetworkInterface in network to populate networkInterfaceIds.
	// +kubebuilder:validation:Optional
	NetworkInterfaceIdsRefs []v1.Reference `json:"networkInterfaceIdsRefs,omitempty" tf:"-"`

	// Selector for a list of NetworkInterface in network to populate networkInterfaceIds.
	// +kubebuilder:validation:Optional
	NetworkInterfaceIdsSelector *v1.Selector `json:"networkInterfaceIdsSelector,omitempty" tf:"-"`

	// A os_disk block as defined below.
	OsDisk []WindowsVirtualMachineOsDiskInitParameters `json:"osDisk,omitempty" tf:"os_disk,omitempty"`

	// A os_image_notification block as defined below.
	OsImageNotification []WindowsVirtualMachineOsImageNotificationInitParameters `json:"osImageNotification,omitempty" tf:"os_image_notification,omitempty"`

	// Specifies the mode of VM Guest Patching for the Virtual Machine. Possible values are AutomaticByPlatform or ImageDefault. Defaults to ImageDefault.
	PatchAssessmentMode *string `json:"patchAssessmentMode,omitempty" tf:"patch_assessment_mode,omitempty"`

	// Specifies the mode of in-guest patching to this Windows Virtual Machine. Possible values are Manual, AutomaticByOS and AutomaticByPlatform. Defaults to AutomaticByOS. For more information on patch modes please see the product documentation.
	PatchMode *string `json:"patchMode,omitempty" tf:"patch_mode,omitempty"`

	// A plan block as defined below. Changing this forces a new resource to be created.
	Plan []WindowsVirtualMachinePlanInitParameters `json:"plan,omitempty" tf:"plan,omitempty"`

	// Specifies the Platform Fault Domain in which this Windows Virtual Machine should be created. Defaults to -1, which means this will be automatically assigned to a fault domain that best maintains balance across the available fault domains. Changing this forces a new Windows Virtual Machine to be created.
	PlatformFaultDomain *float64 `json:"platformFaultDomain,omitempty" tf:"platform_fault_domain,omitempty"`

	// Specifies the priority of this Virtual Machine. Possible values are Regular and Spot. Defaults to Regular. Changing this forces a new resource to be created.
	Priority *string `json:"priority,omitempty" tf:"priority,omitempty"`

	// Should the Azure VM Agent be provisioned on this Virtual Machine? Defaults to true. Changing this forces a new resource to be created.
	ProvisionVMAgent *bool `json:"provisionVmAgent,omitempty" tf:"provision_vm_agent,omitempty"`

	// The ID of the Proximity Placement Group which the Virtual Machine should be assigned to.
	ProximityPlacementGroupID *string `json:"proximityPlacementGroupId,omitempty" tf:"proximity_placement_group_id,omitempty"`

	// Specifies the reboot setting for platform scheduled patching. Possible values are Always, IfRequired and Never.
	RebootSetting *string `json:"rebootSetting,omitempty" tf:"reboot_setting,omitempty"`

	// One or more secret blocks as defined below.
	Secret []WindowsVirtualMachineSecretInitParameters `json:"secret,omitempty" tf:"secret,omitempty"`

	// Specifies if Secure Boot and Trusted Launch is enabled for the Virtual Machine. Changing this forces a new resource to be created.
	SecureBootEnabled *bool `json:"secureBootEnabled,omitempty" tf:"secure_boot_enabled,omitempty"`

	// The SKU which should be used for this Virtual Machine, such as Standard_F2.
	Size *string `json:"size,omitempty" tf:"size,omitempty"`

	// The ID of the Image which this Virtual Machine should be created from. Changing this forces a new resource to be created. Possible Image ID types include Image IDs, Shared Image IDs, Shared Image Version IDs, Community Gallery Image IDs, Community Gallery Image Version IDs, Shared Gallery Image IDs and Shared Gallery Image Version IDs.
	SourceImageID *string `json:"sourceImageId,omitempty" tf:"source_image_id,omitempty"`

	// A source_image_reference block as defined below. Changing this forces a new resource to be created.
	SourceImageReference []WindowsVirtualMachineSourceImageReferenceInitParameters `json:"sourceImageReference,omitempty" tf:"source_image_reference,omitempty"`

	// A mapping of tags which should be assigned to this Virtual Machine.
	// +mapType=granular
	Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"`

	// A termination_notification block as defined below.
	TerminationNotification []WindowsVirtualMachineTerminationNotificationInitParameters `json:"terminationNotification,omitempty" tf:"termination_notification,omitempty"`

	// Specifies the Time Zone which should be used by the Virtual Machine, the possible values are defined here. Changing this forces a new resource to be created.
	Timezone *string `json:"timezone,omitempty" tf:"timezone,omitempty"`

	// The Base64-Encoded User Data which should be used for this Virtual Machine.
	UserData *string `json:"userData,omitempty" tf:"user_data,omitempty"`

	// Specifies whether VMAgent Platform Updates is enabled. Defaults to false.
	VMAgentPlatformUpdatesEnabled *bool `json:"vmAgentPlatformUpdatesEnabled,omitempty" tf:"vm_agent_platform_updates_enabled,omitempty"`

	// Specifies the Orchestrated Virtual Machine Scale Set that this Virtual Machine should be created within.
	VirtualMachineScaleSetID *string `json:"virtualMachineScaleSetId,omitempty" tf:"virtual_machine_scale_set_id,omitempty"`

	// Specifies if vTPM (virtual Trusted Platform Module) and Trusted Launch is enabled for the Virtual Machine. Changing this forces a new resource to be created.
	VtpmEnabled *bool `json:"vtpmEnabled,omitempty" tf:"vtpm_enabled,omitempty"`

	// One or more winrm_listener blocks as defined below. Changing this forces a new resource to be created.
	WinrmListener []WindowsVirtualMachineWinrmListenerInitParameters `json:"winrmListener,omitempty" tf:"winrm_listener,omitempty"`

	// * zones -  Specifies the Availability Zone in which this Windows Virtual Machine should be located. Changing this forces a new Windows Virtual Machine to be created.
	Zone *string `json:"zone,omitempty" tf:"zone,omitempty"`
}

func (*WindowsVirtualMachineInitParameters) DeepCopy added in v0.35.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineInitParameters.

func (*WindowsVirtualMachineInitParameters) DeepCopyInto added in v0.35.0

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type WindowsVirtualMachineList

type WindowsVirtualMachineList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	Items           []WindowsVirtualMachine `json:"items"`
}

WindowsVirtualMachineList contains a list of WindowsVirtualMachines

func (*WindowsVirtualMachineList) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineList.

func (*WindowsVirtualMachineList) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*WindowsVirtualMachineList) DeepCopyObject

func (in *WindowsVirtualMachineList) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

func (*WindowsVirtualMachineList) GetItems

func (l *WindowsVirtualMachineList) GetItems() []resource.Managed

GetItems of this WindowsVirtualMachineList.

type WindowsVirtualMachineObservation

type WindowsVirtualMachineObservation struct {

	// A additional_capabilities block as defined below.
	AdditionalCapabilities []WindowsVirtualMachineAdditionalCapabilitiesObservation `json:"additionalCapabilities,omitempty" tf:"additional_capabilities,omitempty"`

	// One or more additional_unattend_content blocks as defined below. Changing this forces a new resource to be created.
	AdditionalUnattendContent []WindowsVirtualMachineAdditionalUnattendContentObservation `json:"additionalUnattendContent,omitempty" tf:"additional_unattend_content,omitempty"`

	// The username of the local administrator used for the Virtual Machine. Changing this forces a new resource to be created.
	AdminUsername *string `json:"adminUsername,omitempty" tf:"admin_username,omitempty"`

	// Should Extension Operations be allowed on this Virtual Machine? Defaults to true.
	AllowExtensionOperations *bool `json:"allowExtensionOperations,omitempty" tf:"allow_extension_operations,omitempty"`

	// Specifies the ID of the Availability Set in which the Virtual Machine should exist. Changing this forces a new resource to be created.
	AvailabilitySetID *string `json:"availabilitySetId,omitempty" tf:"availability_set_id,omitempty"`

	// A boot_diagnostics block as defined below.
	BootDiagnostics []WindowsVirtualMachineBootDiagnosticsObservation `json:"bootDiagnostics,omitempty" tf:"boot_diagnostics,omitempty"`

	// Specifies whether to skip platform scheduled patching when a user schedule is associated with the VM. Defaults to false.
	BypassPlatformSafetyChecksOnUserScheduleEnabled *bool `` /* 134-byte string literal not displayed */

	// Specifies the ID of the Capacity Reservation Group which the Virtual Machine should be allocated to.
	CapacityReservationGroupID *string `json:"capacityReservationGroupId,omitempty" tf:"capacity_reservation_group_id,omitempty"`

	// Specifies the Hostname which should be used for this Virtual Machine. If unspecified this defaults to the value for the name field. If the value of the name field is not a valid computer_name, then you must specify computer_name. Changing this forces a new resource to be created.
	ComputerName *string `json:"computerName,omitempty" tf:"computer_name,omitempty"`

	// The ID of a Dedicated Host Group that this Windows Virtual Machine should be run within. Conflicts with dedicated_host_id.
	DedicatedHostGroupID *string `json:"dedicatedHostGroupId,omitempty" tf:"dedicated_host_group_id,omitempty"`

	// The ID of a Dedicated Host where this machine should be run on. Conflicts with dedicated_host_group_id.
	DedicatedHostID *string `json:"dedicatedHostId,omitempty" tf:"dedicated_host_id,omitempty"`

	// Specifies the Disk Controller Type used for this Virtual Machine. Possible values are SCSI and NVMe.
	DiskControllerType *string `json:"diskControllerType,omitempty" tf:"disk_controller_type,omitempty"`

	// Specifies the Edge Zone within the Azure Region where this Windows Virtual Machine should exist. Changing this forces a new Windows Virtual Machine to be created.
	EdgeZone *string `json:"edgeZone,omitempty" tf:"edge_zone,omitempty"`

	// Specifies if Automatic Updates are Enabled for the Windows Virtual Machine. Changing this forces a new resource to be created. Defaults to true.
	EnableAutomaticUpdates *bool `json:"enableAutomaticUpdates,omitempty" tf:"enable_automatic_updates,omitempty"`

	// Should all of the disks (including the temp disk) attached to this Virtual Machine be encrypted by enabling Encryption at Host?
	EncryptionAtHostEnabled *bool `json:"encryptionAtHostEnabled,omitempty" tf:"encryption_at_host_enabled,omitempty"`

	// Specifies what should happen when the Virtual Machine is evicted for price reasons when using a Spot instance. Possible values are Deallocate and Delete. Changing this forces a new resource to be created.
	EvictionPolicy *string `json:"evictionPolicy,omitempty" tf:"eviction_policy,omitempty"`

	// Specifies the duration allocated for all extensions to start. The time duration should be between 15 minutes and 120 minutes (inclusive) and should be specified in ISO 8601 format. Defaults to PT1H30M.
	ExtensionsTimeBudget *string `json:"extensionsTimeBudget,omitempty" tf:"extensions_time_budget,omitempty"`

	// One or more gallery_application blocks as defined below.
	GalleryApplication []WindowsVirtualMachineGalleryApplicationObservation `json:"galleryApplication,omitempty" tf:"gallery_application,omitempty"`

	// Should the VM be patched without requiring a reboot? Possible values are true or false. Defaults to false. For more information about hot patching please see the product documentation.
	HotpatchingEnabled *bool `json:"hotpatchingEnabled,omitempty" tf:"hotpatching_enabled,omitempty"`

	// The ID of the Windows Virtual Machine.
	ID *string `json:"id,omitempty" tf:"id,omitempty"`

	// An identity block as defined below.
	Identity []WindowsVirtualMachineIdentityObservation `json:"identity,omitempty" tf:"identity,omitempty"`

	// Specifies the type of on-premise license (also known as Azure Hybrid Use Benefit) which should be used for this Virtual Machine. Possible values are None, Windows_Client and Windows_Server.
	LicenseType *string `json:"licenseType,omitempty" tf:"license_type,omitempty"`

	// The Azure location where the Windows Virtual Machine should exist. Changing this forces a new resource to be created.
	Location *string `json:"location,omitempty" tf:"location,omitempty"`

	// The maximum price you're willing to pay for this Virtual Machine, in US Dollars; which must be greater than the current spot price. If this bid price falls below the current spot price the Virtual Machine will be evicted using the eviction_policy. Defaults to -1, which means that the Virtual Machine should not be evicted for price reasons.
	MaxBidPrice *float64 `json:"maxBidPrice,omitempty" tf:"max_bid_price,omitempty"`

	// . A list of Network Interface IDs which should be attached to this Virtual Machine. The first Network Interface ID in this list will be the Primary Network Interface on the Virtual Machine.
	NetworkInterfaceIds []*string `json:"networkInterfaceIds,omitempty" tf:"network_interface_ids,omitempty"`

	// A os_disk block as defined below.
	OsDisk []WindowsVirtualMachineOsDiskObservation `json:"osDisk,omitempty" tf:"os_disk,omitempty"`

	// A os_image_notification block as defined below.
	OsImageNotification []WindowsVirtualMachineOsImageNotificationObservation `json:"osImageNotification,omitempty" tf:"os_image_notification,omitempty"`

	// Specifies the mode of VM Guest Patching for the Virtual Machine. Possible values are AutomaticByPlatform or ImageDefault. Defaults to ImageDefault.
	PatchAssessmentMode *string `json:"patchAssessmentMode,omitempty" tf:"patch_assessment_mode,omitempty"`

	// Specifies the mode of in-guest patching to this Windows Virtual Machine. Possible values are Manual, AutomaticByOS and AutomaticByPlatform. Defaults to AutomaticByOS. For more information on patch modes please see the product documentation.
	PatchMode *string `json:"patchMode,omitempty" tf:"patch_mode,omitempty"`

	// A plan block as defined below. Changing this forces a new resource to be created.
	Plan []WindowsVirtualMachinePlanObservation `json:"plan,omitempty" tf:"plan,omitempty"`

	// Specifies the Platform Fault Domain in which this Windows Virtual Machine should be created. Defaults to -1, which means this will be automatically assigned to a fault domain that best maintains balance across the available fault domains. Changing this forces a new Windows Virtual Machine to be created.
	PlatformFaultDomain *float64 `json:"platformFaultDomain,omitempty" tf:"platform_fault_domain,omitempty"`

	// Specifies the priority of this Virtual Machine. Possible values are Regular and Spot. Defaults to Regular. Changing this forces a new resource to be created.
	Priority *string `json:"priority,omitempty" tf:"priority,omitempty"`

	// The Primary Private IP Address assigned to this Virtual Machine.
	PrivateIPAddress *string `json:"privateIpAddress,omitempty" tf:"private_ip_address,omitempty"`

	// A list of Private IP Addresses assigned to this Virtual Machine.
	PrivateIPAddresses []*string `json:"privateIpAddresses,omitempty" tf:"private_ip_addresses,omitempty"`

	// Should the Azure VM Agent be provisioned on this Virtual Machine? Defaults to true. Changing this forces a new resource to be created.
	ProvisionVMAgent *bool `json:"provisionVmAgent,omitempty" tf:"provision_vm_agent,omitempty"`

	// The ID of the Proximity Placement Group which the Virtual Machine should be assigned to.
	ProximityPlacementGroupID *string `json:"proximityPlacementGroupId,omitempty" tf:"proximity_placement_group_id,omitempty"`

	// The Primary Public IP Address assigned to this Virtual Machine.
	PublicIPAddress *string `json:"publicIpAddress,omitempty" tf:"public_ip_address,omitempty"`

	// A list of the Public IP Addresses assigned to this Virtual Machine.
	PublicIPAddresses []*string `json:"publicIpAddresses,omitempty" tf:"public_ip_addresses,omitempty"`

	// Specifies the reboot setting for platform scheduled patching. Possible values are Always, IfRequired and Never.
	RebootSetting *string `json:"rebootSetting,omitempty" tf:"reboot_setting,omitempty"`

	// The name of the Resource Group in which the Windows Virtual Machine should be exist. Changing this forces a new resource to be created.
	ResourceGroupName *string `json:"resourceGroupName,omitempty" tf:"resource_group_name,omitempty"`

	// One or more secret blocks as defined below.
	Secret []WindowsVirtualMachineSecretObservation `json:"secret,omitempty" tf:"secret,omitempty"`

	// Specifies if Secure Boot and Trusted Launch is enabled for the Virtual Machine. Changing this forces a new resource to be created.
	SecureBootEnabled *bool `json:"secureBootEnabled,omitempty" tf:"secure_boot_enabled,omitempty"`

	// The SKU which should be used for this Virtual Machine, such as Standard_F2.
	Size *string `json:"size,omitempty" tf:"size,omitempty"`

	// The ID of the Image which this Virtual Machine should be created from. Changing this forces a new resource to be created. Possible Image ID types include Image IDs, Shared Image IDs, Shared Image Version IDs, Community Gallery Image IDs, Community Gallery Image Version IDs, Shared Gallery Image IDs and Shared Gallery Image Version IDs.
	SourceImageID *string `json:"sourceImageId,omitempty" tf:"source_image_id,omitempty"`

	// A source_image_reference block as defined below. Changing this forces a new resource to be created.
	SourceImageReference []WindowsVirtualMachineSourceImageReferenceObservation `json:"sourceImageReference,omitempty" tf:"source_image_reference,omitempty"`

	// A mapping of tags which should be assigned to this Virtual Machine.
	// +mapType=granular
	Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"`

	// A termination_notification block as defined below.
	TerminationNotification []WindowsVirtualMachineTerminationNotificationObservation `json:"terminationNotification,omitempty" tf:"termination_notification,omitempty"`

	// Specifies the Time Zone which should be used by the Virtual Machine, the possible values are defined here. Changing this forces a new resource to be created.
	Timezone *string `json:"timezone,omitempty" tf:"timezone,omitempty"`

	// The Base64-Encoded User Data which should be used for this Virtual Machine.
	UserData *string `json:"userData,omitempty" tf:"user_data,omitempty"`

	// Specifies whether VMAgent Platform Updates is enabled. Defaults to false.
	VMAgentPlatformUpdatesEnabled *bool `json:"vmAgentPlatformUpdatesEnabled,omitempty" tf:"vm_agent_platform_updates_enabled,omitempty"`

	// A 128-bit identifier which uniquely identifies this Virtual Machine.
	VirtualMachineID *string `json:"virtualMachineId,omitempty" tf:"virtual_machine_id,omitempty"`

	// Specifies the Orchestrated Virtual Machine Scale Set that this Virtual Machine should be created within.
	VirtualMachineScaleSetID *string `json:"virtualMachineScaleSetId,omitempty" tf:"virtual_machine_scale_set_id,omitempty"`

	// Specifies if vTPM (virtual Trusted Platform Module) and Trusted Launch is enabled for the Virtual Machine. Changing this forces a new resource to be created.
	VtpmEnabled *bool `json:"vtpmEnabled,omitempty" tf:"vtpm_enabled,omitempty"`

	// One or more winrm_listener blocks as defined below. Changing this forces a new resource to be created.
	WinrmListener []WindowsVirtualMachineWinrmListenerObservation `json:"winrmListener,omitempty" tf:"winrm_listener,omitempty"`

	// * zones -  Specifies the Availability Zone in which this Windows Virtual Machine should be located. Changing this forces a new Windows Virtual Machine to be created.
	Zone *string `json:"zone,omitempty" tf:"zone,omitempty"`
}

func (*WindowsVirtualMachineObservation) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineObservation.

func (*WindowsVirtualMachineObservation) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type WindowsVirtualMachineOsDiskDiffDiskSettingsInitParameters added in v0.35.0

type WindowsVirtualMachineOsDiskDiffDiskSettingsInitParameters struct {

	// Specifies the Ephemeral Disk Settings for the OS Disk. At this time the only possible value is Local. Changing this forces a new resource to be created.
	Option *string `json:"option,omitempty" tf:"option,omitempty"`

	// Specifies where to store the Ephemeral Disk. Possible values are CacheDisk and ResourceDisk. Defaults to CacheDisk. Changing this forces a new resource to be created.
	Placement *string `json:"placement,omitempty" tf:"placement,omitempty"`
}

func (*WindowsVirtualMachineOsDiskDiffDiskSettingsInitParameters) DeepCopy added in v0.35.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineOsDiskDiffDiskSettingsInitParameters.

func (*WindowsVirtualMachineOsDiskDiffDiskSettingsInitParameters) DeepCopyInto added in v0.35.0

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type WindowsVirtualMachineOsDiskDiffDiskSettingsObservation

type WindowsVirtualMachineOsDiskDiffDiskSettingsObservation struct {

	// Specifies the Ephemeral Disk Settings for the OS Disk. At this time the only possible value is Local. Changing this forces a new resource to be created.
	Option *string `json:"option,omitempty" tf:"option,omitempty"`

	// Specifies where to store the Ephemeral Disk. Possible values are CacheDisk and ResourceDisk. Defaults to CacheDisk. Changing this forces a new resource to be created.
	Placement *string `json:"placement,omitempty" tf:"placement,omitempty"`
}

func (*WindowsVirtualMachineOsDiskDiffDiskSettingsObservation) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineOsDiskDiffDiskSettingsObservation.

func (*WindowsVirtualMachineOsDiskDiffDiskSettingsObservation) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type WindowsVirtualMachineOsDiskDiffDiskSettingsParameters

type WindowsVirtualMachineOsDiskDiffDiskSettingsParameters struct {

	// Specifies the Ephemeral Disk Settings for the OS Disk. At this time the only possible value is Local. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	Option *string `json:"option" tf:"option,omitempty"`

	// Specifies where to store the Ephemeral Disk. Possible values are CacheDisk and ResourceDisk. Defaults to CacheDisk. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	Placement *string `json:"placement,omitempty" tf:"placement,omitempty"`
}

func (*WindowsVirtualMachineOsDiskDiffDiskSettingsParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineOsDiskDiffDiskSettingsParameters.

func (*WindowsVirtualMachineOsDiskDiffDiskSettingsParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type WindowsVirtualMachineOsDiskInitParameters added in v0.35.0

type WindowsVirtualMachineOsDiskInitParameters struct {

	// The Type of Caching which should be used for the Internal OS Disk. Possible values are None, ReadOnly and ReadWrite.
	Caching *string `json:"caching,omitempty" tf:"caching,omitempty"`

	// A diff_disk_settings block as defined above. Changing this forces a new resource to be created.
	DiffDiskSettings []WindowsVirtualMachineOsDiskDiffDiskSettingsInitParameters `json:"diffDiskSettings,omitempty" tf:"diff_disk_settings,omitempty"`

	// The ID of the Disk Encryption Set which should be used to Encrypt this OS Disk. Conflicts with secure_vm_disk_encryption_set_id.
	DiskEncryptionSetID *string `json:"diskEncryptionSetId,omitempty" tf:"disk_encryption_set_id,omitempty"`

	// The Size of the Internal OS Disk in GB, if you wish to vary from the size used in the image this Virtual Machine is sourced from.
	DiskSizeGb *float64 `json:"diskSizeGb,omitempty" tf:"disk_size_gb,omitempty"`

	// The name which should be used for the Internal OS Disk. Changing this forces a new resource to be created.
	Name *string `json:"name,omitempty" tf:"name,omitempty"`

	// The ID of the Disk Encryption Set which should be used to Encrypt this OS Disk when the Virtual Machine is a Confidential VM. Conflicts with disk_encryption_set_id. Changing this forces a new resource to be created.
	SecureVMDiskEncryptionSetID *string `json:"secureVmDiskEncryptionSetId,omitempty" tf:"secure_vm_disk_encryption_set_id,omitempty"`

	// Encryption Type when the Virtual Machine is a Confidential VM. Possible values are VMGuestStateOnly and DiskWithVMGuestState. Changing this forces a new resource to be created.
	SecurityEncryptionType *string `json:"securityEncryptionType,omitempty" tf:"security_encryption_type,omitempty"`

	// The Type of Storage Account which should back this the Internal OS Disk. Possible values are Standard_LRS, StandardSSD_LRS, Premium_LRS, StandardSSD_ZRS and Premium_ZRS. Changing this forces a new resource to be created.
	StorageAccountType *string `json:"storageAccountType,omitempty" tf:"storage_account_type,omitempty"`

	// Should Write Accelerator be Enabled for this OS Disk? Defaults to false.
	WriteAcceleratorEnabled *bool `json:"writeAcceleratorEnabled,omitempty" tf:"write_accelerator_enabled,omitempty"`
}

func (*WindowsVirtualMachineOsDiskInitParameters) DeepCopy added in v0.35.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineOsDiskInitParameters.

func (*WindowsVirtualMachineOsDiskInitParameters) DeepCopyInto added in v0.35.0

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type WindowsVirtualMachineOsDiskObservation

type WindowsVirtualMachineOsDiskObservation struct {

	// The Type of Caching which should be used for the Internal OS Disk. Possible values are None, ReadOnly and ReadWrite.
	Caching *string `json:"caching,omitempty" tf:"caching,omitempty"`

	// A diff_disk_settings block as defined above. Changing this forces a new resource to be created.
	DiffDiskSettings []WindowsVirtualMachineOsDiskDiffDiskSettingsObservation `json:"diffDiskSettings,omitempty" tf:"diff_disk_settings,omitempty"`

	// The ID of the Disk Encryption Set which should be used to Encrypt this OS Disk. Conflicts with secure_vm_disk_encryption_set_id.
	DiskEncryptionSetID *string `json:"diskEncryptionSetId,omitempty" tf:"disk_encryption_set_id,omitempty"`

	// The Size of the Internal OS Disk in GB, if you wish to vary from the size used in the image this Virtual Machine is sourced from.
	DiskSizeGb *float64 `json:"diskSizeGb,omitempty" tf:"disk_size_gb,omitempty"`

	// The name which should be used for the Internal OS Disk. Changing this forces a new resource to be created.
	Name *string `json:"name,omitempty" tf:"name,omitempty"`

	// The ID of the Disk Encryption Set which should be used to Encrypt this OS Disk when the Virtual Machine is a Confidential VM. Conflicts with disk_encryption_set_id. Changing this forces a new resource to be created.
	SecureVMDiskEncryptionSetID *string `json:"secureVmDiskEncryptionSetId,omitempty" tf:"secure_vm_disk_encryption_set_id,omitempty"`

	// Encryption Type when the Virtual Machine is a Confidential VM. Possible values are VMGuestStateOnly and DiskWithVMGuestState. Changing this forces a new resource to be created.
	SecurityEncryptionType *string `json:"securityEncryptionType,omitempty" tf:"security_encryption_type,omitempty"`

	// The Type of Storage Account which should back this the Internal OS Disk. Possible values are Standard_LRS, StandardSSD_LRS, Premium_LRS, StandardSSD_ZRS and Premium_ZRS. Changing this forces a new resource to be created.
	StorageAccountType *string `json:"storageAccountType,omitempty" tf:"storage_account_type,omitempty"`

	// Should Write Accelerator be Enabled for this OS Disk? Defaults to false.
	WriteAcceleratorEnabled *bool `json:"writeAcceleratorEnabled,omitempty" tf:"write_accelerator_enabled,omitempty"`
}

func (*WindowsVirtualMachineOsDiskObservation) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineOsDiskObservation.

func (*WindowsVirtualMachineOsDiskObservation) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type WindowsVirtualMachineOsDiskParameters

type WindowsVirtualMachineOsDiskParameters struct {

	// The Type of Caching which should be used for the Internal OS Disk. Possible values are None, ReadOnly and ReadWrite.
	// +kubebuilder:validation:Optional
	Caching *string `json:"caching" tf:"caching,omitempty"`

	// A diff_disk_settings block as defined above. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	DiffDiskSettings []WindowsVirtualMachineOsDiskDiffDiskSettingsParameters `json:"diffDiskSettings,omitempty" tf:"diff_disk_settings,omitempty"`

	// The ID of the Disk Encryption Set which should be used to Encrypt this OS Disk. Conflicts with secure_vm_disk_encryption_set_id.
	// +kubebuilder:validation:Optional
	DiskEncryptionSetID *string `json:"diskEncryptionSetId,omitempty" tf:"disk_encryption_set_id,omitempty"`

	// The Size of the Internal OS Disk in GB, if you wish to vary from the size used in the image this Virtual Machine is sourced from.
	// +kubebuilder:validation:Optional
	DiskSizeGb *float64 `json:"diskSizeGb,omitempty" tf:"disk_size_gb,omitempty"`

	// The name which should be used for the Internal OS Disk. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	Name *string `json:"name,omitempty" tf:"name,omitempty"`

	// The ID of the Disk Encryption Set which should be used to Encrypt this OS Disk when the Virtual Machine is a Confidential VM. Conflicts with disk_encryption_set_id. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	SecureVMDiskEncryptionSetID *string `json:"secureVmDiskEncryptionSetId,omitempty" tf:"secure_vm_disk_encryption_set_id,omitempty"`

	// Encryption Type when the Virtual Machine is a Confidential VM. Possible values are VMGuestStateOnly and DiskWithVMGuestState. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	SecurityEncryptionType *string `json:"securityEncryptionType,omitempty" tf:"security_encryption_type,omitempty"`

	// The Type of Storage Account which should back this the Internal OS Disk. Possible values are Standard_LRS, StandardSSD_LRS, Premium_LRS, StandardSSD_ZRS and Premium_ZRS. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	StorageAccountType *string `json:"storageAccountType" tf:"storage_account_type,omitempty"`

	// Should Write Accelerator be Enabled for this OS Disk? Defaults to false.
	// +kubebuilder:validation:Optional
	WriteAcceleratorEnabled *bool `json:"writeAcceleratorEnabled,omitempty" tf:"write_accelerator_enabled,omitempty"`
}

func (*WindowsVirtualMachineOsDiskParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineOsDiskParameters.

func (*WindowsVirtualMachineOsDiskParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type WindowsVirtualMachineOsImageNotificationInitParameters added in v1.0.0

type WindowsVirtualMachineOsImageNotificationInitParameters struct {

	// Length of time a notification to be sent to the VM on the instance metadata server till the VM gets OS upgraded. The only possible value is PT15M. Defaults to PT15M.
	Timeout *string `json:"timeout,omitempty" tf:"timeout,omitempty"`
}

func (*WindowsVirtualMachineOsImageNotificationInitParameters) DeepCopy added in v1.0.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineOsImageNotificationInitParameters.

func (*WindowsVirtualMachineOsImageNotificationInitParameters) DeepCopyInto added in v1.0.0

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type WindowsVirtualMachineOsImageNotificationObservation added in v1.0.0

type WindowsVirtualMachineOsImageNotificationObservation struct {

	// Length of time a notification to be sent to the VM on the instance metadata server till the VM gets OS upgraded. The only possible value is PT15M. Defaults to PT15M.
	Timeout *string `json:"timeout,omitempty" tf:"timeout,omitempty"`
}

func (*WindowsVirtualMachineOsImageNotificationObservation) DeepCopy added in v1.0.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineOsImageNotificationObservation.

func (*WindowsVirtualMachineOsImageNotificationObservation) DeepCopyInto added in v1.0.0

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type WindowsVirtualMachineOsImageNotificationParameters added in v1.0.0

type WindowsVirtualMachineOsImageNotificationParameters struct {

	// Length of time a notification to be sent to the VM on the instance metadata server till the VM gets OS upgraded. The only possible value is PT15M. Defaults to PT15M.
	// +kubebuilder:validation:Optional
	Timeout *string `json:"timeout,omitempty" tf:"timeout,omitempty"`
}

func (*WindowsVirtualMachineOsImageNotificationParameters) DeepCopy added in v1.0.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineOsImageNotificationParameters.

func (*WindowsVirtualMachineOsImageNotificationParameters) DeepCopyInto added in v1.0.0

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type WindowsVirtualMachineParameters

type WindowsVirtualMachineParameters struct {

	// A additional_capabilities block as defined below.
	// +kubebuilder:validation:Optional
	AdditionalCapabilities []WindowsVirtualMachineAdditionalCapabilitiesParameters `json:"additionalCapabilities,omitempty" tf:"additional_capabilities,omitempty"`

	// One or more additional_unattend_content blocks as defined below. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	AdditionalUnattendContent []WindowsVirtualMachineAdditionalUnattendContentParameters `json:"additionalUnattendContent,omitempty" tf:"additional_unattend_content,omitempty"`

	// The Password which should be used for the local-administrator on this Virtual Machine. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	AdminPasswordSecretRef v1.SecretKeySelector `json:"adminPasswordSecretRef" tf:"-"`

	// The username of the local administrator used for the Virtual Machine. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	AdminUsername *string `json:"adminUsername,omitempty" tf:"admin_username,omitempty"`

	// Should Extension Operations be allowed on this Virtual Machine? Defaults to true.
	// +kubebuilder:validation:Optional
	AllowExtensionOperations *bool `json:"allowExtensionOperations,omitempty" tf:"allow_extension_operations,omitempty"`

	// Specifies the ID of the Availability Set in which the Virtual Machine should exist. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	AvailabilitySetID *string `json:"availabilitySetId,omitempty" tf:"availability_set_id,omitempty"`

	// A boot_diagnostics block as defined below.
	// +kubebuilder:validation:Optional
	BootDiagnostics []WindowsVirtualMachineBootDiagnosticsParameters `json:"bootDiagnostics,omitempty" tf:"boot_diagnostics,omitempty"`

	// Specifies whether to skip platform scheduled patching when a user schedule is associated with the VM. Defaults to false.
	// +kubebuilder:validation:Optional
	BypassPlatformSafetyChecksOnUserScheduleEnabled *bool `` /* 134-byte string literal not displayed */

	// Specifies the ID of the Capacity Reservation Group which the Virtual Machine should be allocated to.
	// +kubebuilder:validation:Optional
	CapacityReservationGroupID *string `json:"capacityReservationGroupId,omitempty" tf:"capacity_reservation_group_id,omitempty"`

	// Specifies the Hostname which should be used for this Virtual Machine. If unspecified this defaults to the value for the name field. If the value of the name field is not a valid computer_name, then you must specify computer_name. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	ComputerName *string `json:"computerName,omitempty" tf:"computer_name,omitempty"`

	// The Base64-Encoded Custom Data which should be used for this Virtual Machine. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	CustomDataSecretRef *v1.SecretKeySelector `json:"customDataSecretRef,omitempty" tf:"-"`

	// The ID of a Dedicated Host Group that this Windows Virtual Machine should be run within. Conflicts with dedicated_host_id.
	// +kubebuilder:validation:Optional
	DedicatedHostGroupID *string `json:"dedicatedHostGroupId,omitempty" tf:"dedicated_host_group_id,omitempty"`

	// The ID of a Dedicated Host where this machine should be run on. Conflicts with dedicated_host_group_id.
	// +kubebuilder:validation:Optional
	DedicatedHostID *string `json:"dedicatedHostId,omitempty" tf:"dedicated_host_id,omitempty"`

	// Specifies the Disk Controller Type used for this Virtual Machine. Possible values are SCSI and NVMe.
	// +kubebuilder:validation:Optional
	DiskControllerType *string `json:"diskControllerType,omitempty" tf:"disk_controller_type,omitempty"`

	// Specifies the Edge Zone within the Azure Region where this Windows Virtual Machine should exist. Changing this forces a new Windows Virtual Machine to be created.
	// +kubebuilder:validation:Optional
	EdgeZone *string `json:"edgeZone,omitempty" tf:"edge_zone,omitempty"`

	// Specifies if Automatic Updates are Enabled for the Windows Virtual Machine. Changing this forces a new resource to be created. Defaults to true.
	// +kubebuilder:validation:Optional
	EnableAutomaticUpdates *bool `json:"enableAutomaticUpdates,omitempty" tf:"enable_automatic_updates,omitempty"`

	// Should all of the disks (including the temp disk) attached to this Virtual Machine be encrypted by enabling Encryption at Host?
	// +kubebuilder:validation:Optional
	EncryptionAtHostEnabled *bool `json:"encryptionAtHostEnabled,omitempty" tf:"encryption_at_host_enabled,omitempty"`

	// Specifies what should happen when the Virtual Machine is evicted for price reasons when using a Spot instance. Possible values are Deallocate and Delete. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	EvictionPolicy *string `json:"evictionPolicy,omitempty" tf:"eviction_policy,omitempty"`

	// Specifies the duration allocated for all extensions to start. The time duration should be between 15 minutes and 120 minutes (inclusive) and should be specified in ISO 8601 format. Defaults to PT1H30M.
	// +kubebuilder:validation:Optional
	ExtensionsTimeBudget *string `json:"extensionsTimeBudget,omitempty" tf:"extensions_time_budget,omitempty"`

	// One or more gallery_application blocks as defined below.
	// +kubebuilder:validation:Optional
	GalleryApplication []WindowsVirtualMachineGalleryApplicationParameters `json:"galleryApplication,omitempty" tf:"gallery_application,omitempty"`

	// Should the VM be patched without requiring a reboot? Possible values are true or false. Defaults to false. For more information about hot patching please see the product documentation.
	// +kubebuilder:validation:Optional
	HotpatchingEnabled *bool `json:"hotpatchingEnabled,omitempty" tf:"hotpatching_enabled,omitempty"`

	// An identity block as defined below.
	// +kubebuilder:validation:Optional
	Identity []WindowsVirtualMachineIdentityParameters `json:"identity,omitempty" tf:"identity,omitempty"`

	// Specifies the type of on-premise license (also known as Azure Hybrid Use Benefit) which should be used for this Virtual Machine. Possible values are None, Windows_Client and Windows_Server.
	// +kubebuilder:validation:Optional
	LicenseType *string `json:"licenseType,omitempty" tf:"license_type,omitempty"`

	// The Azure location where the Windows Virtual Machine should exist. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	Location *string `json:"location,omitempty" tf:"location,omitempty"`

	// The maximum price you're willing to pay for this Virtual Machine, in US Dollars; which must be greater than the current spot price. If this bid price falls below the current spot price the Virtual Machine will be evicted using the eviction_policy. Defaults to -1, which means that the Virtual Machine should not be evicted for price reasons.
	// +kubebuilder:validation:Optional
	MaxBidPrice *float64 `json:"maxBidPrice,omitempty" tf:"max_bid_price,omitempty"`

	// . A list of Network Interface IDs which should be attached to this Virtual Machine. The first Network Interface ID in this list will be the Primary Network Interface on the Virtual Machine.
	// +crossplane:generate:reference:type=github.com/upbound/provider-azure/apis/network/v1beta1.NetworkInterface
	// +crossplane:generate:reference:extractor=github.com/upbound/provider-azure/apis/rconfig.ExtractResourceID()
	// +kubebuilder:validation:Optional
	NetworkInterfaceIds []*string `json:"networkInterfaceIds,omitempty" tf:"network_interface_ids,omitempty"`

	// References to NetworkInterface in network to populate networkInterfaceIds.
	// +kubebuilder:validation:Optional
	NetworkInterfaceIdsRefs []v1.Reference `json:"networkInterfaceIdsRefs,omitempty" tf:"-"`

	// Selector for a list of NetworkInterface in network to populate networkInterfaceIds.
	// +kubebuilder:validation:Optional
	NetworkInterfaceIdsSelector *v1.Selector `json:"networkInterfaceIdsSelector,omitempty" tf:"-"`

	// A os_disk block as defined below.
	// +kubebuilder:validation:Optional
	OsDisk []WindowsVirtualMachineOsDiskParameters `json:"osDisk,omitempty" tf:"os_disk,omitempty"`

	// A os_image_notification block as defined below.
	// +kubebuilder:validation:Optional
	OsImageNotification []WindowsVirtualMachineOsImageNotificationParameters `json:"osImageNotification,omitempty" tf:"os_image_notification,omitempty"`

	// Specifies the mode of VM Guest Patching for the Virtual Machine. Possible values are AutomaticByPlatform or ImageDefault. Defaults to ImageDefault.
	// +kubebuilder:validation:Optional
	PatchAssessmentMode *string `json:"patchAssessmentMode,omitempty" tf:"patch_assessment_mode,omitempty"`

	// Specifies the mode of in-guest patching to this Windows Virtual Machine. Possible values are Manual, AutomaticByOS and AutomaticByPlatform. Defaults to AutomaticByOS. For more information on patch modes please see the product documentation.
	// +kubebuilder:validation:Optional
	PatchMode *string `json:"patchMode,omitempty" tf:"patch_mode,omitempty"`

	// A plan block as defined below. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	Plan []WindowsVirtualMachinePlanParameters `json:"plan,omitempty" tf:"plan,omitempty"`

	// Specifies the Platform Fault Domain in which this Windows Virtual Machine should be created. Defaults to -1, which means this will be automatically assigned to a fault domain that best maintains balance across the available fault domains. Changing this forces a new Windows Virtual Machine to be created.
	// +kubebuilder:validation:Optional
	PlatformFaultDomain *float64 `json:"platformFaultDomain,omitempty" tf:"platform_fault_domain,omitempty"`

	// Specifies the priority of this Virtual Machine. Possible values are Regular and Spot. Defaults to Regular. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	Priority *string `json:"priority,omitempty" tf:"priority,omitempty"`

	// Should the Azure VM Agent be provisioned on this Virtual Machine? Defaults to true. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	ProvisionVMAgent *bool `json:"provisionVmAgent,omitempty" tf:"provision_vm_agent,omitempty"`

	// The ID of the Proximity Placement Group which the Virtual Machine should be assigned to.
	// +kubebuilder:validation:Optional
	ProximityPlacementGroupID *string `json:"proximityPlacementGroupId,omitempty" tf:"proximity_placement_group_id,omitempty"`

	// Specifies the reboot setting for platform scheduled patching. Possible values are Always, IfRequired and Never.
	// +kubebuilder:validation:Optional
	RebootSetting *string `json:"rebootSetting,omitempty" tf:"reboot_setting,omitempty"`

	// The name of the Resource Group in which the Windows Virtual Machine should be exist. 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:"-"`

	// One or more secret blocks as defined below.
	// +kubebuilder:validation:Optional
	Secret []WindowsVirtualMachineSecretParameters `json:"secret,omitempty" tf:"secret,omitempty"`

	// Specifies if Secure Boot and Trusted Launch is enabled for the Virtual Machine. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	SecureBootEnabled *bool `json:"secureBootEnabled,omitempty" tf:"secure_boot_enabled,omitempty"`

	// The SKU which should be used for this Virtual Machine, such as Standard_F2.
	// +kubebuilder:validation:Optional
	Size *string `json:"size,omitempty" tf:"size,omitempty"`

	// The ID of the Image which this Virtual Machine should be created from. Changing this forces a new resource to be created. Possible Image ID types include Image IDs, Shared Image IDs, Shared Image Version IDs, Community Gallery Image IDs, Community Gallery Image Version IDs, Shared Gallery Image IDs and Shared Gallery Image Version IDs.
	// +kubebuilder:validation:Optional
	SourceImageID *string `json:"sourceImageId,omitempty" tf:"source_image_id,omitempty"`

	// A source_image_reference block as defined below. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	SourceImageReference []WindowsVirtualMachineSourceImageReferenceParameters `json:"sourceImageReference,omitempty" tf:"source_image_reference,omitempty"`

	// A mapping of tags which should be assigned to this Virtual Machine.
	// +kubebuilder:validation:Optional
	// +mapType=granular
	Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"`

	// A termination_notification block as defined below.
	// +kubebuilder:validation:Optional
	TerminationNotification []WindowsVirtualMachineTerminationNotificationParameters `json:"terminationNotification,omitempty" tf:"termination_notification,omitempty"`

	// Specifies the Time Zone which should be used by the Virtual Machine, the possible values are defined here. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	Timezone *string `json:"timezone,omitempty" tf:"timezone,omitempty"`

	// The Base64-Encoded User Data which should be used for this Virtual Machine.
	// +kubebuilder:validation:Optional
	UserData *string `json:"userData,omitempty" tf:"user_data,omitempty"`

	// Specifies whether VMAgent Platform Updates is enabled. Defaults to false.
	// +kubebuilder:validation:Optional
	VMAgentPlatformUpdatesEnabled *bool `json:"vmAgentPlatformUpdatesEnabled,omitempty" tf:"vm_agent_platform_updates_enabled,omitempty"`

	// Specifies the Orchestrated Virtual Machine Scale Set that this Virtual Machine should be created within.
	// +kubebuilder:validation:Optional
	VirtualMachineScaleSetID *string `json:"virtualMachineScaleSetId,omitempty" tf:"virtual_machine_scale_set_id,omitempty"`

	// Specifies if vTPM (virtual Trusted Platform Module) and Trusted Launch is enabled for the Virtual Machine. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	VtpmEnabled *bool `json:"vtpmEnabled,omitempty" tf:"vtpm_enabled,omitempty"`

	// One or more winrm_listener blocks as defined below. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	WinrmListener []WindowsVirtualMachineWinrmListenerParameters `json:"winrmListener,omitempty" tf:"winrm_listener,omitempty"`

	// * zones -  Specifies the Availability Zone in which this Windows Virtual Machine should be located. Changing this forces a new Windows Virtual Machine to be created.
	// +kubebuilder:validation:Optional
	Zone *string `json:"zone,omitempty" tf:"zone,omitempty"`
}

func (*WindowsVirtualMachineParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineParameters.

func (*WindowsVirtualMachineParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type WindowsVirtualMachinePlanInitParameters added in v0.35.0

type WindowsVirtualMachinePlanInitParameters struct {

	// Specifies the Name of the Marketplace Image this Virtual Machine should be created from. Changing this forces a new resource to be created.
	Name *string `json:"name,omitempty" tf:"name,omitempty"`

	// Specifies the Product of the Marketplace Image this Virtual Machine should be created from. Changing this forces a new resource to be created.
	Product *string `json:"product,omitempty" tf:"product,omitempty"`

	// Specifies the Publisher of the Marketplace Image this Virtual Machine should be created from. Changing this forces a new resource to be created.
	Publisher *string `json:"publisher,omitempty" tf:"publisher,omitempty"`
}

func (*WindowsVirtualMachinePlanInitParameters) DeepCopy added in v0.35.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachinePlanInitParameters.

func (*WindowsVirtualMachinePlanInitParameters) DeepCopyInto added in v0.35.0

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type WindowsVirtualMachinePlanObservation

type WindowsVirtualMachinePlanObservation struct {

	// Specifies the Name of the Marketplace Image this Virtual Machine should be created from. Changing this forces a new resource to be created.
	Name *string `json:"name,omitempty" tf:"name,omitempty"`

	// Specifies the Product of the Marketplace Image this Virtual Machine should be created from. Changing this forces a new resource to be created.
	Product *string `json:"product,omitempty" tf:"product,omitempty"`

	// Specifies the Publisher of the Marketplace Image this Virtual Machine should be created from. Changing this forces a new resource to be created.
	Publisher *string `json:"publisher,omitempty" tf:"publisher,omitempty"`
}

func (*WindowsVirtualMachinePlanObservation) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachinePlanObservation.

func (*WindowsVirtualMachinePlanObservation) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type WindowsVirtualMachinePlanParameters

type WindowsVirtualMachinePlanParameters struct {

	// Specifies the Name of the Marketplace Image this Virtual Machine should be created from. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	Name *string `json:"name" tf:"name,omitempty"`

	// Specifies the Product of the Marketplace Image this Virtual Machine should be created from. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	Product *string `json:"product" tf:"product,omitempty"`

	// Specifies the Publisher of the Marketplace Image this Virtual Machine should be created from. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	Publisher *string `json:"publisher" tf:"publisher,omitempty"`
}

func (*WindowsVirtualMachinePlanParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachinePlanParameters.

func (*WindowsVirtualMachinePlanParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type WindowsVirtualMachineScaleSet

type WindowsVirtualMachineScaleSet 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.adminPasswordSecretRef)",message="spec.forProvider.adminPasswordSecretRef is a required parameter"
	// +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.adminUsername) || (has(self.initProvider) && has(self.initProvider.adminUsername))",message="spec.forProvider.adminUsername is a required parameter"
	// +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.instances) || (has(self.initProvider) && has(self.initProvider.instances))",message="spec.forProvider.instances is a required parameter"
	// +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || (has(self.initProvider) && has(self.initProvider.location))",message="spec.forProvider.location is a required parameter"
	// +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.networkInterface) || (has(self.initProvider) && has(self.initProvider.networkInterface))",message="spec.forProvider.networkInterface is a required parameter"
	// +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.osDisk) || (has(self.initProvider) && has(self.initProvider.osDisk))",message="spec.forProvider.osDisk is a required parameter"
	// +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.sku) || (has(self.initProvider) && has(self.initProvider.sku))",message="spec.forProvider.sku is a required parameter"
	Spec   WindowsVirtualMachineScaleSetSpec   `json:"spec"`
	Status WindowsVirtualMachineScaleSetStatus `json:"status,omitempty"`
}

WindowsVirtualMachineScaleSet is the Schema for the WindowsVirtualMachineScaleSets API. Manages a Windows Virtual Machine Scale Set. +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 (*WindowsVirtualMachineScaleSet) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineScaleSet.

func (*WindowsVirtualMachineScaleSet) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*WindowsVirtualMachineScaleSet) DeepCopyObject

func (in *WindowsVirtualMachineScaleSet) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

func (*WindowsVirtualMachineScaleSet) GetCondition

GetCondition of this WindowsVirtualMachineScaleSet.

func (*WindowsVirtualMachineScaleSet) GetConnectionDetailsMapping

func (tr *WindowsVirtualMachineScaleSet) GetConnectionDetailsMapping() map[string]string

GetConnectionDetailsMapping for this WindowsVirtualMachineScaleSet

func (*WindowsVirtualMachineScaleSet) GetDeletionPolicy

func (mg *WindowsVirtualMachineScaleSet) GetDeletionPolicy() xpv1.DeletionPolicy

GetDeletionPolicy of this WindowsVirtualMachineScaleSet.

func (*WindowsVirtualMachineScaleSet) GetID

GetID returns ID of underlying Terraform resource of this WindowsVirtualMachineScaleSet

func (*WindowsVirtualMachineScaleSet) GetInitParameters added in v0.35.0

func (tr *WindowsVirtualMachineScaleSet) GetInitParameters() (map[string]any, error)

GetInitParameters of this WindowsVirtualMachineScaleSet

func (*WindowsVirtualMachineScaleSet) GetManagementPolicies added in v0.35.0

func (mg *WindowsVirtualMachineScaleSet) GetManagementPolicies() xpv1.ManagementPolicies

GetManagementPolicies of this WindowsVirtualMachineScaleSet.

func (*WindowsVirtualMachineScaleSet) GetMergedParameters added in v0.40.0

func (tr *WindowsVirtualMachineScaleSet) GetMergedParameters(shouldMergeInitProvider bool) (map[string]any, error)

GetInitParameters of this WindowsVirtualMachineScaleSet

func (*WindowsVirtualMachineScaleSet) GetObservation

func (tr *WindowsVirtualMachineScaleSet) GetObservation() (map[string]any, error)

GetObservation of this WindowsVirtualMachineScaleSet

func (*WindowsVirtualMachineScaleSet) GetParameters

func (tr *WindowsVirtualMachineScaleSet) GetParameters() (map[string]any, error)

GetParameters of this WindowsVirtualMachineScaleSet

func (*WindowsVirtualMachineScaleSet) GetProviderConfigReference

func (mg *WindowsVirtualMachineScaleSet) GetProviderConfigReference() *xpv1.Reference

GetProviderConfigReference of this WindowsVirtualMachineScaleSet.

func (*WindowsVirtualMachineScaleSet) GetPublishConnectionDetailsTo

func (mg *WindowsVirtualMachineScaleSet) GetPublishConnectionDetailsTo() *xpv1.PublishConnectionDetailsTo

GetPublishConnectionDetailsTo of this WindowsVirtualMachineScaleSet.

func (*WindowsVirtualMachineScaleSet) GetTerraformResourceType

func (mg *WindowsVirtualMachineScaleSet) GetTerraformResourceType() string

GetTerraformResourceType returns Terraform resource type for this WindowsVirtualMachineScaleSet

func (*WindowsVirtualMachineScaleSet) GetTerraformSchemaVersion

func (tr *WindowsVirtualMachineScaleSet) GetTerraformSchemaVersion() int

GetTerraformSchemaVersion returns the associated Terraform schema version

func (*WindowsVirtualMachineScaleSet) GetWriteConnectionSecretToReference

func (mg *WindowsVirtualMachineScaleSet) GetWriteConnectionSecretToReference() *xpv1.SecretReference

GetWriteConnectionSecretToReference of this WindowsVirtualMachineScaleSet.

func (*WindowsVirtualMachineScaleSet) Hub added in v0.42.1

Hub marks this type as a conversion hub.

func (*WindowsVirtualMachineScaleSet) LateInitialize

func (tr *WindowsVirtualMachineScaleSet) LateInitialize(attrs []byte) (bool, error)

LateInitialize this WindowsVirtualMachineScaleSet using its observed tfState. returns True if there are any spec changes for the resource.

func (*WindowsVirtualMachineScaleSet) ResolveReferences

func (mg *WindowsVirtualMachineScaleSet) ResolveReferences(ctx context.Context, c client.Reader) error

ResolveReferences of this WindowsVirtualMachineScaleSet.

func (*WindowsVirtualMachineScaleSet) SetConditions

func (mg *WindowsVirtualMachineScaleSet) SetConditions(c ...xpv1.Condition)

SetConditions of this WindowsVirtualMachineScaleSet.

func (*WindowsVirtualMachineScaleSet) SetDeletionPolicy

func (mg *WindowsVirtualMachineScaleSet) SetDeletionPolicy(r xpv1.DeletionPolicy)

SetDeletionPolicy of this WindowsVirtualMachineScaleSet.

func (*WindowsVirtualMachineScaleSet) SetManagementPolicies added in v0.35.0

func (mg *WindowsVirtualMachineScaleSet) SetManagementPolicies(r xpv1.ManagementPolicies)

SetManagementPolicies of this WindowsVirtualMachineScaleSet.

func (*WindowsVirtualMachineScaleSet) SetObservation

func (tr *WindowsVirtualMachineScaleSet) SetObservation(obs map[string]any) error

SetObservation for this WindowsVirtualMachineScaleSet

func (*WindowsVirtualMachineScaleSet) SetParameters

func (tr *WindowsVirtualMachineScaleSet) SetParameters(params map[string]any) error

SetParameters for this WindowsVirtualMachineScaleSet

func (*WindowsVirtualMachineScaleSet) SetProviderConfigReference

func (mg *WindowsVirtualMachineScaleSet) SetProviderConfigReference(r *xpv1.Reference)

SetProviderConfigReference of this WindowsVirtualMachineScaleSet.

func (*WindowsVirtualMachineScaleSet) SetPublishConnectionDetailsTo

func (mg *WindowsVirtualMachineScaleSet) SetPublishConnectionDetailsTo(r *xpv1.PublishConnectionDetailsTo)

SetPublishConnectionDetailsTo of this WindowsVirtualMachineScaleSet.

func (*WindowsVirtualMachineScaleSet) SetWriteConnectionSecretToReference

func (mg *WindowsVirtualMachineScaleSet) SetWriteConnectionSecretToReference(r *xpv1.SecretReference)

SetWriteConnectionSecretToReference of this WindowsVirtualMachineScaleSet.

type WindowsVirtualMachineScaleSetAdditionalCapabilitiesInitParameters added in v0.35.0

type WindowsVirtualMachineScaleSetAdditionalCapabilitiesInitParameters struct {

	// Should the capacity to enable Data Disks of the UltraSSD_LRS storage account type be supported on this Virtual Machine Scale Set? Possible values are true or false. Defaults to false. Changing this forces a new resource to be created.
	UltraSsdEnabled *bool `json:"ultraSsdEnabled,omitempty" tf:"ultra_ssd_enabled,omitempty"`
}

func (*WindowsVirtualMachineScaleSetAdditionalCapabilitiesInitParameters) DeepCopy added in v0.35.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineScaleSetAdditionalCapabilitiesInitParameters.

func (*WindowsVirtualMachineScaleSetAdditionalCapabilitiesInitParameters) DeepCopyInto added in v0.35.0

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type WindowsVirtualMachineScaleSetAdditionalCapabilitiesObservation

type WindowsVirtualMachineScaleSetAdditionalCapabilitiesObservation struct {

	// Should the capacity to enable Data Disks of the UltraSSD_LRS storage account type be supported on this Virtual Machine Scale Set? Possible values are true or false. Defaults to false. Changing this forces a new resource to be created.
	UltraSsdEnabled *bool `json:"ultraSsdEnabled,omitempty" tf:"ultra_ssd_enabled,omitempty"`
}

func (*WindowsVirtualMachineScaleSetAdditionalCapabilitiesObservation) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineScaleSetAdditionalCapabilitiesObservation.

func (*WindowsVirtualMachineScaleSetAdditionalCapabilitiesObservation) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type WindowsVirtualMachineScaleSetAdditionalCapabilitiesParameters

type WindowsVirtualMachineScaleSetAdditionalCapabilitiesParameters struct {

	// Should the capacity to enable Data Disks of the UltraSSD_LRS storage account type be supported on this Virtual Machine Scale Set? Possible values are true or false. Defaults to false. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	UltraSsdEnabled *bool `json:"ultraSsdEnabled,omitempty" tf:"ultra_ssd_enabled,omitempty"`
}

func (*WindowsVirtualMachineScaleSetAdditionalCapabilitiesParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineScaleSetAdditionalCapabilitiesParameters.

func (*WindowsVirtualMachineScaleSetAdditionalCapabilitiesParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type WindowsVirtualMachineScaleSetAdditionalUnattendContentInitParameters added in v0.35.0

type WindowsVirtualMachineScaleSetAdditionalUnattendContentInitParameters struct {

	// The name of the setting to which the content applies. Possible values are AutoLogon and FirstLogonCommands. Changing this forces a new resource to be created.
	Setting *string `json:"setting,omitempty" tf:"setting,omitempty"`
}

func (*WindowsVirtualMachineScaleSetAdditionalUnattendContentInitParameters) DeepCopy added in v0.35.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineScaleSetAdditionalUnattendContentInitParameters.

func (*WindowsVirtualMachineScaleSetAdditionalUnattendContentInitParameters) DeepCopyInto added in v0.35.0

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type WindowsVirtualMachineScaleSetAdditionalUnattendContentObservation

type WindowsVirtualMachineScaleSetAdditionalUnattendContentObservation struct {

	// The name of the setting to which the content applies. Possible values are AutoLogon and FirstLogonCommands. Changing this forces a new resource to be created.
	Setting *string `json:"setting,omitempty" tf:"setting,omitempty"`
}

func (*WindowsVirtualMachineScaleSetAdditionalUnattendContentObservation) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineScaleSetAdditionalUnattendContentObservation.

func (*WindowsVirtualMachineScaleSetAdditionalUnattendContentObservation) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type WindowsVirtualMachineScaleSetAdditionalUnattendContentParameters

type WindowsVirtualMachineScaleSetAdditionalUnattendContentParameters struct {

	// The XML formatted content that is added to the unattend.xml file for the specified path and component. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Required
	ContentSecretRef v1.SecretKeySelector `json:"contentSecretRef" tf:"-"`

	// The name of the setting to which the content applies. Possible values are AutoLogon and FirstLogonCommands. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	Setting *string `json:"setting" tf:"setting,omitempty"`
}

func (*WindowsVirtualMachineScaleSetAdditionalUnattendContentParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineScaleSetAdditionalUnattendContentParameters.

func (*WindowsVirtualMachineScaleSetAdditionalUnattendContentParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type WindowsVirtualMachineScaleSetAutomaticInstanceRepairInitParameters added in v0.35.0

type WindowsVirtualMachineScaleSetAutomaticInstanceRepairInitParameters struct {

	// Should the automatic instance repair be enabled on this Virtual Machine Scale Set?
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// Amount of time (in minutes, between 30 and 90) for which automatic repairs will be delayed. The grace period starts right after the VM is found unhealthy. The time duration should be specified in ISO 8601 format. Defaults to PT30M.
	GracePeriod *string `json:"gracePeriod,omitempty" tf:"grace_period,omitempty"`
}

func (*WindowsVirtualMachineScaleSetAutomaticInstanceRepairInitParameters) DeepCopy added in v0.35.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineScaleSetAutomaticInstanceRepairInitParameters.

func (*WindowsVirtualMachineScaleSetAutomaticInstanceRepairInitParameters) DeepCopyInto added in v0.35.0

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type WindowsVirtualMachineScaleSetAutomaticInstanceRepairObservation

type WindowsVirtualMachineScaleSetAutomaticInstanceRepairObservation struct {

	// Should the automatic instance repair be enabled on this Virtual Machine Scale Set?
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// Amount of time (in minutes, between 30 and 90) for which automatic repairs will be delayed. The grace period starts right after the VM is found unhealthy. The time duration should be specified in ISO 8601 format. Defaults to PT30M.
	GracePeriod *string `json:"gracePeriod,omitempty" tf:"grace_period,omitempty"`
}

func (*WindowsVirtualMachineScaleSetAutomaticInstanceRepairObservation) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineScaleSetAutomaticInstanceRepairObservation.

func (*WindowsVirtualMachineScaleSetAutomaticInstanceRepairObservation) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type WindowsVirtualMachineScaleSetAutomaticInstanceRepairParameters

type WindowsVirtualMachineScaleSetAutomaticInstanceRepairParameters struct {

	// Should the automatic instance repair be enabled on this Virtual Machine Scale Set?
	// +kubebuilder:validation:Optional
	Enabled *bool `json:"enabled" tf:"enabled,omitempty"`

	// Amount of time (in minutes, between 30 and 90) for which automatic repairs will be delayed. The grace period starts right after the VM is found unhealthy. The time duration should be specified in ISO 8601 format. Defaults to PT30M.
	// +kubebuilder:validation:Optional
	GracePeriod *string `json:"gracePeriod,omitempty" tf:"grace_period,omitempty"`
}

func (*WindowsVirtualMachineScaleSetAutomaticInstanceRepairParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineScaleSetAutomaticInstanceRepairParameters.

func (*WindowsVirtualMachineScaleSetAutomaticInstanceRepairParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type WindowsVirtualMachineScaleSetAutomaticOsUpgradePolicyInitParameters added in v0.35.0

type WindowsVirtualMachineScaleSetAutomaticOsUpgradePolicyInitParameters struct {

	// Should automatic rollbacks be disabled?
	DisableAutomaticRollback *bool `json:"disableAutomaticRollback,omitempty" tf:"disable_automatic_rollback,omitempty"`

	// Should OS Upgrades automatically be applied to Scale Set instances in a rolling fashion when a newer version of the OS Image becomes available?
	EnableAutomaticOsUpgrade *bool `json:"enableAutomaticOsUpgrade,omitempty" tf:"enable_automatic_os_upgrade,omitempty"`
}

func (*WindowsVirtualMachineScaleSetAutomaticOsUpgradePolicyInitParameters) DeepCopy added in v0.35.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineScaleSetAutomaticOsUpgradePolicyInitParameters.

func (*WindowsVirtualMachineScaleSetAutomaticOsUpgradePolicyInitParameters) DeepCopyInto added in v0.35.0

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type WindowsVirtualMachineScaleSetAutomaticOsUpgradePolicyObservation

type WindowsVirtualMachineScaleSetAutomaticOsUpgradePolicyObservation struct {

	// Should automatic rollbacks be disabled?
	DisableAutomaticRollback *bool `json:"disableAutomaticRollback,omitempty" tf:"disable_automatic_rollback,omitempty"`

	// Should OS Upgrades automatically be applied to Scale Set instances in a rolling fashion when a newer version of the OS Image becomes available?
	EnableAutomaticOsUpgrade *bool `json:"enableAutomaticOsUpgrade,omitempty" tf:"enable_automatic_os_upgrade,omitempty"`
}

func (*WindowsVirtualMachineScaleSetAutomaticOsUpgradePolicyObservation) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineScaleSetAutomaticOsUpgradePolicyObservation.

func (*WindowsVirtualMachineScaleSetAutomaticOsUpgradePolicyObservation) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type WindowsVirtualMachineScaleSetAutomaticOsUpgradePolicyParameters

type WindowsVirtualMachineScaleSetAutomaticOsUpgradePolicyParameters struct {

	// Should automatic rollbacks be disabled?
	// +kubebuilder:validation:Optional
	DisableAutomaticRollback *bool `json:"disableAutomaticRollback" tf:"disable_automatic_rollback,omitempty"`

	// Should OS Upgrades automatically be applied to Scale Set instances in a rolling fashion when a newer version of the OS Image becomes available?
	// +kubebuilder:validation:Optional
	EnableAutomaticOsUpgrade *bool `json:"enableAutomaticOsUpgrade" tf:"enable_automatic_os_upgrade,omitempty"`
}

func (*WindowsVirtualMachineScaleSetAutomaticOsUpgradePolicyParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineScaleSetAutomaticOsUpgradePolicyParameters.

func (*WindowsVirtualMachineScaleSetAutomaticOsUpgradePolicyParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type WindowsVirtualMachineScaleSetBootDiagnosticsInitParameters added in v0.35.0

type WindowsVirtualMachineScaleSetBootDiagnosticsInitParameters struct {

	// The Primary/Secondary Endpoint for the Azure Storage Account which should be used to store Boot Diagnostics, including Console Output and Screenshots from the Hypervisor.
	StorageAccountURI *string `json:"storageAccountUri,omitempty" tf:"storage_account_uri,omitempty"`
}

func (*WindowsVirtualMachineScaleSetBootDiagnosticsInitParameters) DeepCopy added in v0.35.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineScaleSetBootDiagnosticsInitParameters.

func (*WindowsVirtualMachineScaleSetBootDiagnosticsInitParameters) DeepCopyInto added in v0.35.0

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type WindowsVirtualMachineScaleSetBootDiagnosticsObservation

type WindowsVirtualMachineScaleSetBootDiagnosticsObservation struct {

	// The Primary/Secondary Endpoint for the Azure Storage Account which should be used to store Boot Diagnostics, including Console Output and Screenshots from the Hypervisor.
	StorageAccountURI *string `json:"storageAccountUri,omitempty" tf:"storage_account_uri,omitempty"`
}

func (*WindowsVirtualMachineScaleSetBootDiagnosticsObservation) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineScaleSetBootDiagnosticsObservation.

func (*WindowsVirtualMachineScaleSetBootDiagnosticsObservation) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type WindowsVirtualMachineScaleSetBootDiagnosticsParameters

type WindowsVirtualMachineScaleSetBootDiagnosticsParameters struct {

	// The Primary/Secondary Endpoint for the Azure Storage Account which should be used to store Boot Diagnostics, including Console Output and Screenshots from the Hypervisor.
	// +kubebuilder:validation:Optional
	StorageAccountURI *string `json:"storageAccountUri,omitempty" tf:"storage_account_uri,omitempty"`
}

func (*WindowsVirtualMachineScaleSetBootDiagnosticsParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineScaleSetBootDiagnosticsParameters.

func (*WindowsVirtualMachineScaleSetBootDiagnosticsParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type WindowsVirtualMachineScaleSetDataDiskInitParameters added in v0.35.0

type WindowsVirtualMachineScaleSetDataDiskInitParameters struct {

	// The type of Caching which should be used for this Data Disk. Possible values are None, ReadOnly and ReadWrite.
	Caching *string `json:"caching,omitempty" tf:"caching,omitempty"`

	// The create option which should be used for this Data Disk. Possible values are Empty and FromImage. Defaults to Empty. (FromImage should only be used if the source image includes data disks).
	CreateOption *string `json:"createOption,omitempty" tf:"create_option,omitempty"`

	// The ID of the Disk Encryption Set which should be used to encrypt this OS Disk. Conflicts with secure_vm_disk_encryption_set_id. Changing this forces a new resource to be created.
	DiskEncryptionSetID *string `json:"diskEncryptionSetId,omitempty" tf:"disk_encryption_set_id,omitempty"`

	// The size of the Data Disk which should be created.
	DiskSizeGb *float64 `json:"diskSizeGb,omitempty" tf:"disk_size_gb,omitempty"`

	// The Logical Unit Number of the Data Disk, which must be unique within the Virtual Machine.
	Lun *float64 `json:"lun,omitempty" tf:"lun,omitempty"`

	// The name of the Data Disk.
	Name *string `json:"name,omitempty" tf:"name,omitempty"`

	// The Type of Storage Account which should back this Data Disk. Possible values include Standard_LRS, StandardSSD_LRS, StandardSSD_ZRS, Premium_LRS, PremiumV2_LRS, Premium_ZRS and UltraSSD_LRS.
	StorageAccountType *string `json:"storageAccountType,omitempty" tf:"storage_account_type,omitempty"`

	// Specifies the Read-Write IOPS for this Data Disk. Only settable when storage_account_type is PremiumV2_LRS or UltraSSD_LRS.
	UltraSsdDiskIopsReadWrite *float64 `json:"ultraSsdDiskIopsReadWrite,omitempty" tf:"ultra_ssd_disk_iops_read_write,omitempty"`

	// Specifies the bandwidth in MB per second for this Data Disk. Only settable when storage_account_type is PremiumV2_LRS or UltraSSD_LRS.
	UltraSsdDiskMbpsReadWrite *float64 `json:"ultraSsdDiskMbpsReadWrite,omitempty" tf:"ultra_ssd_disk_mbps_read_write,omitempty"`

	// Should Write Accelerator be Enabled for this OS Disk? Defaults to false.
	WriteAcceleratorEnabled *bool `json:"writeAcceleratorEnabled,omitempty" tf:"write_accelerator_enabled,omitempty"`
}

func (*WindowsVirtualMachineScaleSetDataDiskInitParameters) DeepCopy added in v0.35.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineScaleSetDataDiskInitParameters.

func (*WindowsVirtualMachineScaleSetDataDiskInitParameters) DeepCopyInto added in v0.35.0

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type WindowsVirtualMachineScaleSetDataDiskObservation

type WindowsVirtualMachineScaleSetDataDiskObservation struct {

	// The type of Caching which should be used for this Data Disk. Possible values are None, ReadOnly and ReadWrite.
	Caching *string `json:"caching,omitempty" tf:"caching,omitempty"`

	// The create option which should be used for this Data Disk. Possible values are Empty and FromImage. Defaults to Empty. (FromImage should only be used if the source image includes data disks).
	CreateOption *string `json:"createOption,omitempty" tf:"create_option,omitempty"`

	// The ID of the Disk Encryption Set which should be used to encrypt this OS Disk. Conflicts with secure_vm_disk_encryption_set_id. Changing this forces a new resource to be created.
	DiskEncryptionSetID *string `json:"diskEncryptionSetId,omitempty" tf:"disk_encryption_set_id,omitempty"`

	// The size of the Data Disk which should be created.
	DiskSizeGb *float64 `json:"diskSizeGb,omitempty" tf:"disk_size_gb,omitempty"`

	// The Logical Unit Number of the Data Disk, which must be unique within the Virtual Machine.
	Lun *float64 `json:"lun,omitempty" tf:"lun,omitempty"`

	// The name of the Data Disk.
	Name *string `json:"name,omitempty" tf:"name,omitempty"`

	// The Type of Storage Account which should back this Data Disk. Possible values include Standard_LRS, StandardSSD_LRS, StandardSSD_ZRS, Premium_LRS, PremiumV2_LRS, Premium_ZRS and UltraSSD_LRS.
	StorageAccountType *string `json:"storageAccountType,omitempty" tf:"storage_account_type,omitempty"`

	// Specifies the Read-Write IOPS for this Data Disk. Only settable when storage_account_type is PremiumV2_LRS or UltraSSD_LRS.
	UltraSsdDiskIopsReadWrite *float64 `json:"ultraSsdDiskIopsReadWrite,omitempty" tf:"ultra_ssd_disk_iops_read_write,omitempty"`

	// Specifies the bandwidth in MB per second for this Data Disk. Only settable when storage_account_type is PremiumV2_LRS or UltraSSD_LRS.
	UltraSsdDiskMbpsReadWrite *float64 `json:"ultraSsdDiskMbpsReadWrite,omitempty" tf:"ultra_ssd_disk_mbps_read_write,omitempty"`

	// Should Write Accelerator be Enabled for this OS Disk? Defaults to false.
	WriteAcceleratorEnabled *bool `json:"writeAcceleratorEnabled,omitempty" tf:"write_accelerator_enabled,omitempty"`
}

func (*WindowsVirtualMachineScaleSetDataDiskObservation) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineScaleSetDataDiskObservation.

func (*WindowsVirtualMachineScaleSetDataDiskObservation) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type WindowsVirtualMachineScaleSetDataDiskParameters

type WindowsVirtualMachineScaleSetDataDiskParameters struct {

	// The type of Caching which should be used for this Data Disk. Possible values are None, ReadOnly and ReadWrite.
	// +kubebuilder:validation:Optional
	Caching *string `json:"caching" tf:"caching,omitempty"`

	// The create option which should be used for this Data Disk. Possible values are Empty and FromImage. Defaults to Empty. (FromImage should only be used if the source image includes data disks).
	// +kubebuilder:validation:Optional
	CreateOption *string `json:"createOption,omitempty" tf:"create_option,omitempty"`

	// The ID of the Disk Encryption Set which should be used to encrypt this OS Disk. Conflicts with secure_vm_disk_encryption_set_id. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	DiskEncryptionSetID *string `json:"diskEncryptionSetId,omitempty" tf:"disk_encryption_set_id,omitempty"`

	// The size of the Data Disk which should be created.
	// +kubebuilder:validation:Optional
	DiskSizeGb *float64 `json:"diskSizeGb" tf:"disk_size_gb,omitempty"`

	// The Logical Unit Number of the Data Disk, which must be unique within the Virtual Machine.
	// +kubebuilder:validation:Optional
	Lun *float64 `json:"lun" tf:"lun,omitempty"`

	// The name of the Data Disk.
	// +kubebuilder:validation:Optional
	Name *string `json:"name,omitempty" tf:"name,omitempty"`

	// The Type of Storage Account which should back this Data Disk. Possible values include Standard_LRS, StandardSSD_LRS, StandardSSD_ZRS, Premium_LRS, PremiumV2_LRS, Premium_ZRS and UltraSSD_LRS.
	// +kubebuilder:validation:Optional
	StorageAccountType *string `json:"storageAccountType" tf:"storage_account_type,omitempty"`

	// Specifies the Read-Write IOPS for this Data Disk. Only settable when storage_account_type is PremiumV2_LRS or UltraSSD_LRS.
	// +kubebuilder:validation:Optional
	UltraSsdDiskIopsReadWrite *float64 `json:"ultraSsdDiskIopsReadWrite,omitempty" tf:"ultra_ssd_disk_iops_read_write,omitempty"`

	// Specifies the bandwidth in MB per second for this Data Disk. Only settable when storage_account_type is PremiumV2_LRS or UltraSSD_LRS.
	// +kubebuilder:validation:Optional
	UltraSsdDiskMbpsReadWrite *float64 `json:"ultraSsdDiskMbpsReadWrite,omitempty" tf:"ultra_ssd_disk_mbps_read_write,omitempty"`

	// Should Write Accelerator be Enabled for this OS Disk? Defaults to false.
	// +kubebuilder:validation:Optional
	WriteAcceleratorEnabled *bool `json:"writeAcceleratorEnabled,omitempty" tf:"write_accelerator_enabled,omitempty"`
}

func (*WindowsVirtualMachineScaleSetDataDiskParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineScaleSetDataDiskParameters.

func (*WindowsVirtualMachineScaleSetDataDiskParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type WindowsVirtualMachineScaleSetExtensionInitParameters added in v0.35.0

type WindowsVirtualMachineScaleSetExtensionInitParameters struct {

	// Should the latest version of the Extension be used at Deployment Time, if one is available? This won't auto-update the extension on existing installation. Defaults to true.
	AutoUpgradeMinorVersion *bool `json:"autoUpgradeMinorVersion,omitempty" tf:"auto_upgrade_minor_version,omitempty"`

	// Should the Extension be automatically updated whenever the Publisher releases a new version of this VM Extension?
	AutomaticUpgradeEnabled *bool `json:"automaticUpgradeEnabled,omitempty" tf:"automatic_upgrade_enabled,omitempty"`

	// A value which, when different to the previous value can be used to force-run the Extension even if the Extension Configuration hasn't changed.
	ForceUpdateTag *string `json:"forceUpdateTag,omitempty" tf:"force_update_tag,omitempty"`

	// The name for the Virtual Machine Scale Set Extension.
	Name *string `json:"name,omitempty" tf:"name,omitempty"`

	// A protected_settings_from_key_vault block as defined below.
	ProtectedSettingsFromKeyVault []WindowsVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultInitParameters `json:"protectedSettingsFromKeyVault,omitempty" tf:"protected_settings_from_key_vault,omitempty"`

	// An ordered list of Extension names which this should be provisioned after.
	ProvisionAfterExtensions []*string `json:"provisionAfterExtensions,omitempty" tf:"provision_after_extensions,omitempty"`

	// Specifies the Publisher of the Extension.
	Publisher *string `json:"publisher,omitempty" tf:"publisher,omitempty"`

	// A JSON String which specifies Settings for the Extension.
	Settings *string `json:"settings,omitempty" tf:"settings,omitempty"`

	// Specifies the Type of the Extension.
	Type *string `json:"type,omitempty" tf:"type,omitempty"`

	// Specifies the version of the extension to use, available versions can be found using the Azure CLI.
	TypeHandlerVersion *string `json:"typeHandlerVersion,omitempty" tf:"type_handler_version,omitempty"`
}

func (*WindowsVirtualMachineScaleSetExtensionInitParameters) DeepCopy added in v0.35.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineScaleSetExtensionInitParameters.

func (*WindowsVirtualMachineScaleSetExtensionInitParameters) DeepCopyInto added in v0.35.0

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type WindowsVirtualMachineScaleSetExtensionObservation

type WindowsVirtualMachineScaleSetExtensionObservation struct {

	// Should the latest version of the Extension be used at Deployment Time, if one is available? This won't auto-update the extension on existing installation. Defaults to true.
	AutoUpgradeMinorVersion *bool `json:"autoUpgradeMinorVersion,omitempty" tf:"auto_upgrade_minor_version,omitempty"`

	// Should the Extension be automatically updated whenever the Publisher releases a new version of this VM Extension?
	AutomaticUpgradeEnabled *bool `json:"automaticUpgradeEnabled,omitempty" tf:"automatic_upgrade_enabled,omitempty"`

	// A value which, when different to the previous value can be used to force-run the Extension even if the Extension Configuration hasn't changed.
	ForceUpdateTag *string `json:"forceUpdateTag,omitempty" tf:"force_update_tag,omitempty"`

	// The name for the Virtual Machine Scale Set Extension.
	Name *string `json:"name,omitempty" tf:"name,omitempty"`

	// A protected_settings_from_key_vault block as defined below.
	ProtectedSettingsFromKeyVault []WindowsVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultObservation `json:"protectedSettingsFromKeyVault,omitempty" tf:"protected_settings_from_key_vault,omitempty"`

	// An ordered list of Extension names which this should be provisioned after.
	ProvisionAfterExtensions []*string `json:"provisionAfterExtensions,omitempty" tf:"provision_after_extensions,omitempty"`

	// Specifies the Publisher of the Extension.
	Publisher *string `json:"publisher,omitempty" tf:"publisher,omitempty"`

	// A JSON String which specifies Settings for the Extension.
	Settings *string `json:"settings,omitempty" tf:"settings,omitempty"`

	// Specifies the Type of the Extension.
	Type *string `json:"type,omitempty" tf:"type,omitempty"`

	// Specifies the version of the extension to use, available versions can be found using the Azure CLI.
	TypeHandlerVersion *string `json:"typeHandlerVersion,omitempty" tf:"type_handler_version,omitempty"`
}

func (*WindowsVirtualMachineScaleSetExtensionObservation) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineScaleSetExtensionObservation.

func (*WindowsVirtualMachineScaleSetExtensionObservation) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type WindowsVirtualMachineScaleSetExtensionParameters

type WindowsVirtualMachineScaleSetExtensionParameters struct {

	// Should the latest version of the Extension be used at Deployment Time, if one is available? This won't auto-update the extension on existing installation. Defaults to true.
	// +kubebuilder:validation:Optional
	AutoUpgradeMinorVersion *bool `json:"autoUpgradeMinorVersion,omitempty" tf:"auto_upgrade_minor_version,omitempty"`

	// Should the Extension be automatically updated whenever the Publisher releases a new version of this VM Extension?
	// +kubebuilder:validation:Optional
	AutomaticUpgradeEnabled *bool `json:"automaticUpgradeEnabled,omitempty" tf:"automatic_upgrade_enabled,omitempty"`

	// A value which, when different to the previous value can be used to force-run the Extension even if the Extension Configuration hasn't changed.
	// +kubebuilder:validation:Optional
	ForceUpdateTag *string `json:"forceUpdateTag,omitempty" tf:"force_update_tag,omitempty"`

	// The name for the Virtual Machine Scale Set Extension.
	// +kubebuilder:validation:Optional
	Name *string `json:"name" tf:"name,omitempty"`

	// A protected_settings_from_key_vault block as defined below.
	// +kubebuilder:validation:Optional
	ProtectedSettingsFromKeyVault []WindowsVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultParameters `json:"protectedSettingsFromKeyVault,omitempty" tf:"protected_settings_from_key_vault,omitempty"`

	// A JSON String which specifies Sensitive Settings (such as Passwords) for the Extension.
	// +kubebuilder:validation:Optional
	ProtectedSettingsSecretRef *v1.SecretKeySelector `json:"protectedSettingsSecretRef,omitempty" tf:"-"`

	// An ordered list of Extension names which this should be provisioned after.
	// +kubebuilder:validation:Optional
	ProvisionAfterExtensions []*string `json:"provisionAfterExtensions,omitempty" tf:"provision_after_extensions,omitempty"`

	// Specifies the Publisher of the Extension.
	// +kubebuilder:validation:Optional
	Publisher *string `json:"publisher" tf:"publisher,omitempty"`

	// A JSON String which specifies Settings for the Extension.
	// +kubebuilder:validation:Optional
	Settings *string `json:"settings,omitempty" tf:"settings,omitempty"`

	// Specifies the Type of the Extension.
	// +kubebuilder:validation:Optional
	Type *string `json:"type" tf:"type,omitempty"`

	// Specifies the version of the extension to use, available versions can be found using the Azure CLI.
	// +kubebuilder:validation:Optional
	TypeHandlerVersion *string `json:"typeHandlerVersion" tf:"type_handler_version,omitempty"`
}

func (*WindowsVirtualMachineScaleSetExtensionParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineScaleSetExtensionParameters.

func (*WindowsVirtualMachineScaleSetExtensionParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type WindowsVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultInitParameters added in v0.35.0

type WindowsVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultInitParameters struct {

	// The URL to the Key Vault Secret which stores the protected settings.
	SecretURL *string `json:"secretUrl,omitempty" tf:"secret_url,omitempty"`

	// The ID of the source Key Vault.
	SourceVaultID *string `json:"sourceVaultId,omitempty" tf:"source_vault_id,omitempty"`
}

func (*WindowsVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultInitParameters) DeepCopy added in v0.35.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultInitParameters.

func (*WindowsVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultInitParameters) DeepCopyInto added in v0.35.0

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type WindowsVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultObservation added in v0.26.0

type WindowsVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultObservation struct {

	// The URL to the Key Vault Secret which stores the protected settings.
	SecretURL *string `json:"secretUrl,omitempty" tf:"secret_url,omitempty"`

	// The ID of the source Key Vault.
	SourceVaultID *string `json:"sourceVaultId,omitempty" tf:"source_vault_id,omitempty"`
}

func (*WindowsVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultObservation) DeepCopy added in v0.26.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultObservation.

func (*WindowsVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultObservation) DeepCopyInto added in v0.26.0

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type WindowsVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultParameters added in v0.26.0

type WindowsVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultParameters struct {

	// The URL to the Key Vault Secret which stores the protected settings.
	// +kubebuilder:validation:Optional
	SecretURL *string `json:"secretUrl" tf:"secret_url,omitempty"`

	// The ID of the source Key Vault.
	// +kubebuilder:validation:Optional
	SourceVaultID *string `json:"sourceVaultId" tf:"source_vault_id,omitempty"`
}

func (*WindowsVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultParameters) DeepCopy added in v0.26.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultParameters.

func (*WindowsVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultParameters) DeepCopyInto added in v0.26.0

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type WindowsVirtualMachineScaleSetGalleryApplicationInitParameters added in v0.35.0

type WindowsVirtualMachineScaleSetGalleryApplicationInitParameters struct {

	// Specifies the URI to an Azure Blob that will replace the default configuration for the package if provided. Changing this forces a new resource to be created.
	ConfigurationBlobURI *string `json:"configurationBlobUri,omitempty" tf:"configuration_blob_uri,omitempty"`

	// Specifies the order in which the packages have to be installed. Possible values are between 0 and 2,147,483,647. Changing this forces a new resource to be created.
	Order *float64 `json:"order,omitempty" tf:"order,omitempty"`

	// Specifies a passthrough value for more generic context. This field can be any valid string value. Changing this forces a new resource to be created.
	Tag *string `json:"tag,omitempty" tf:"tag,omitempty"`

	// Specifies the Gallery Application Version resource ID. Changing this forces a new resource to be created.
	VersionID *string `json:"versionId,omitempty" tf:"version_id,omitempty"`
}

func (*WindowsVirtualMachineScaleSetGalleryApplicationInitParameters) DeepCopy added in v0.35.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineScaleSetGalleryApplicationInitParameters.

func (*WindowsVirtualMachineScaleSetGalleryApplicationInitParameters) DeepCopyInto added in v0.35.0

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type WindowsVirtualMachineScaleSetGalleryApplicationObservation added in v0.26.0

type WindowsVirtualMachineScaleSetGalleryApplicationObservation struct {

	// Specifies the URI to an Azure Blob that will replace the default configuration for the package if provided. Changing this forces a new resource to be created.
	ConfigurationBlobURI *string `json:"configurationBlobUri,omitempty" tf:"configuration_blob_uri,omitempty"`

	// Specifies the order in which the packages have to be installed. Possible values are between 0 and 2,147,483,647. Changing this forces a new resource to be created.
	Order *float64 `json:"order,omitempty" tf:"order,omitempty"`

	// Specifies a passthrough value for more generic context. This field can be any valid string value. Changing this forces a new resource to be created.
	Tag *string `json:"tag,omitempty" tf:"tag,omitempty"`

	// Specifies the Gallery Application Version resource ID. Changing this forces a new resource to be created.
	VersionID *string `json:"versionId,omitempty" tf:"version_id,omitempty"`
}

func (*WindowsVirtualMachineScaleSetGalleryApplicationObservation) DeepCopy added in v0.26.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineScaleSetGalleryApplicationObservation.

func (*WindowsVirtualMachineScaleSetGalleryApplicationObservation) DeepCopyInto added in v0.26.0

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type WindowsVirtualMachineScaleSetGalleryApplicationParameters added in v0.26.0

type WindowsVirtualMachineScaleSetGalleryApplicationParameters struct {

	// Specifies the URI to an Azure Blob that will replace the default configuration for the package if provided. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	ConfigurationBlobURI *string `json:"configurationBlobUri,omitempty" tf:"configuration_blob_uri,omitempty"`

	// Specifies the order in which the packages have to be installed. Possible values are between 0 and 2,147,483,647. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	Order *float64 `json:"order,omitempty" tf:"order,omitempty"`

	// Specifies a passthrough value for more generic context. This field can be any valid string value. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	Tag *string `json:"tag,omitempty" tf:"tag,omitempty"`

	// Specifies the Gallery Application Version resource ID. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	VersionID *string `json:"versionId" tf:"version_id,omitempty"`
}

func (*WindowsVirtualMachineScaleSetGalleryApplicationParameters) DeepCopy added in v0.26.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineScaleSetGalleryApplicationParameters.

func (*WindowsVirtualMachineScaleSetGalleryApplicationParameters) DeepCopyInto added in v0.26.0

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type WindowsVirtualMachineScaleSetGalleryApplicationsInitParameters added in v0.35.0

type WindowsVirtualMachineScaleSetGalleryApplicationsInitParameters struct {
	ConfigurationReferenceBlobURI *string `json:"configurationReferenceBlobUri,omitempty" tf:"configuration_reference_blob_uri,omitempty"`

	// Specifies the order in which the packages have to be installed. Possible values are between 0 and 2,147,483,647. Changing this forces a new resource to be created.
	Order *float64 `json:"order,omitempty" tf:"order,omitempty"`

	// The ID of the Windows Virtual Machine Scale Set.
	PackageReferenceID *string `json:"packageReferenceId,omitempty" tf:"package_reference_id,omitempty"`

	// The IP Tag associated with the Public IP, such as SQL or Storage. Changing this forces a new resource to be created.
	Tag *string `json:"tag,omitempty" tf:"tag,omitempty"`
}

func (*WindowsVirtualMachineScaleSetGalleryApplicationsInitParameters) DeepCopy added in v0.35.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineScaleSetGalleryApplicationsInitParameters.

func (*WindowsVirtualMachineScaleSetGalleryApplicationsInitParameters) DeepCopyInto added in v0.35.0

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type WindowsVirtualMachineScaleSetGalleryApplicationsObservation added in v0.26.0

type WindowsVirtualMachineScaleSetGalleryApplicationsObservation struct {
	ConfigurationReferenceBlobURI *string `json:"configurationReferenceBlobUri,omitempty" tf:"configuration_reference_blob_uri,omitempty"`

	// Specifies the order in which the packages have to be installed. Possible values are between 0 and 2,147,483,647. Changing this forces a new resource to be created.
	Order *float64 `json:"order,omitempty" tf:"order,omitempty"`

	// The ID of the Windows Virtual Machine Scale Set.
	PackageReferenceID *string `json:"packageReferenceId,omitempty" tf:"package_reference_id,omitempty"`

	// The IP Tag associated with the Public IP, such as SQL or Storage. Changing this forces a new resource to be created.
	Tag *string `json:"tag,omitempty" tf:"tag,omitempty"`
}

func (*WindowsVirtualMachineScaleSetGalleryApplicationsObservation) DeepCopy added in v0.26.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineScaleSetGalleryApplicationsObservation.

func (*WindowsVirtualMachineScaleSetGalleryApplicationsObservation) DeepCopyInto added in v0.26.0

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type WindowsVirtualMachineScaleSetGalleryApplicationsParameters added in v0.26.0

type WindowsVirtualMachineScaleSetGalleryApplicationsParameters struct {

	// +kubebuilder:validation:Optional
	ConfigurationReferenceBlobURI *string `json:"configurationReferenceBlobUri,omitempty" tf:"configuration_reference_blob_uri,omitempty"`

	// Specifies the order in which the packages have to be installed. Possible values are between 0 and 2,147,483,647. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	Order *float64 `json:"order,omitempty" tf:"order,omitempty"`

	// The ID of the Windows Virtual Machine Scale Set.
	// +kubebuilder:validation:Optional
	PackageReferenceID *string `json:"packageReferenceId" tf:"package_reference_id,omitempty"`

	// The IP Tag associated with the Public IP, such as SQL or Storage. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	Tag *string `json:"tag,omitempty" tf:"tag,omitempty"`
}

func (*WindowsVirtualMachineScaleSetGalleryApplicationsParameters) DeepCopy added in v0.26.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineScaleSetGalleryApplicationsParameters.

func (*WindowsVirtualMachineScaleSetGalleryApplicationsParameters) DeepCopyInto added in v0.26.0

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type WindowsVirtualMachineScaleSetIdentityInitParameters added in v0.35.0

type WindowsVirtualMachineScaleSetIdentityInitParameters struct {

	// Specifies a list of User Assigned Managed Identity IDs to be assigned to this Windows Virtual Machine Scale Set.
	// +listType=set
	IdentityIds []*string `json:"identityIds,omitempty" tf:"identity_ids,omitempty"`

	// Specifies the type of Managed Service Identity that should be configured on this Windows Virtual Machine Scale Set. Possible values are SystemAssigned, UserAssigned, SystemAssigned, UserAssigned (to enable both).
	Type *string `json:"type,omitempty" tf:"type,omitempty"`
}

func (*WindowsVirtualMachineScaleSetIdentityInitParameters) DeepCopy added in v0.35.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineScaleSetIdentityInitParameters.

func (*WindowsVirtualMachineScaleSetIdentityInitParameters) DeepCopyInto added in v0.35.0

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type WindowsVirtualMachineScaleSetIdentityObservation

type WindowsVirtualMachineScaleSetIdentityObservation struct {

	// Specifies a list of User Assigned Managed Identity IDs to be assigned to this Windows Virtual Machine Scale Set.
	// +listType=set
	IdentityIds []*string `json:"identityIds,omitempty" tf:"identity_ids,omitempty"`

	// 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 Windows Virtual Machine Scale Set. Possible values are SystemAssigned, UserAssigned, SystemAssigned, UserAssigned (to enable both).
	Type *string `json:"type,omitempty" tf:"type,omitempty"`
}

func (*WindowsVirtualMachineScaleSetIdentityObservation) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineScaleSetIdentityObservation.

func (*WindowsVirtualMachineScaleSetIdentityObservation) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type WindowsVirtualMachineScaleSetIdentityParameters

type WindowsVirtualMachineScaleSetIdentityParameters struct {

	// Specifies a list of User Assigned Managed Identity IDs to be assigned to this Windows Virtual Machine Scale Set.
	// +kubebuilder:validation:Optional
	// +listType=set
	IdentityIds []*string `json:"identityIds,omitempty" tf:"identity_ids,omitempty"`

	// Specifies the type of Managed Service Identity that should be configured on this Windows Virtual Machine Scale Set. Possible values are SystemAssigned, UserAssigned, SystemAssigned, UserAssigned (to enable both).
	// +kubebuilder:validation:Optional
	Type *string `json:"type" tf:"type,omitempty"`
}

func (*WindowsVirtualMachineScaleSetIdentityParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineScaleSetIdentityParameters.

func (*WindowsVirtualMachineScaleSetIdentityParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type WindowsVirtualMachineScaleSetInitParameters added in v0.35.0

type WindowsVirtualMachineScaleSetInitParameters struct {

	// An additional_capabilities block as defined below.
	AdditionalCapabilities []WindowsVirtualMachineScaleSetAdditionalCapabilitiesInitParameters `json:"additionalCapabilities,omitempty" tf:"additional_capabilities,omitempty"`

	// One or more additional_unattend_content blocks as defined below. Changing this forces a new resource to be created.
	AdditionalUnattendContent []WindowsVirtualMachineScaleSetAdditionalUnattendContentInitParameters `json:"additionalUnattendContent,omitempty" tf:"additional_unattend_content,omitempty"`

	// The username of the local administrator on each Virtual Machine Scale Set instance. Changing this forces a new resource to be created.
	AdminUsername *string `json:"adminUsername,omitempty" tf:"admin_username,omitempty"`

	// An automatic_instance_repair block as defined below. To enable the automatic instance repair, this Virtual Machine Scale Set must have a valid health_probe_id or an Application Health Extension.
	AutomaticInstanceRepair []WindowsVirtualMachineScaleSetAutomaticInstanceRepairInitParameters `json:"automaticInstanceRepair,omitempty" tf:"automatic_instance_repair,omitempty"`

	// An automatic_os_upgrade_policy block as defined below. This can only be specified when upgrade_mode is set to either Automatic or Rolling.
	AutomaticOsUpgradePolicy []WindowsVirtualMachineScaleSetAutomaticOsUpgradePolicyInitParameters `json:"automaticOsUpgradePolicy,omitempty" tf:"automatic_os_upgrade_policy,omitempty"`

	// A boot_diagnostics block as defined below.
	BootDiagnostics []WindowsVirtualMachineScaleSetBootDiagnosticsInitParameters `json:"bootDiagnostics,omitempty" tf:"boot_diagnostics,omitempty"`

	// Specifies the ID of the Capacity Reservation Group which the Virtual Machine Scale Set should be allocated to. Changing this forces a new resource to be created.
	CapacityReservationGroupID *string `json:"capacityReservationGroupId,omitempty" tf:"capacity_reservation_group_id,omitempty"`

	// The prefix which should be used for the name of the Virtual Machines in this Scale Set. If unspecified this defaults to the value for the name field. If the value of the name field is not a valid computer_name_prefix, then you must specify computer_name_prefix. Changing this forces a new resource to be created.
	ComputerNamePrefix *string `json:"computerNamePrefix,omitempty" tf:"computer_name_prefix,omitempty"`

	// One or more data_disk blocks as defined below.
	DataDisk []WindowsVirtualMachineScaleSetDataDiskInitParameters `json:"dataDisk,omitempty" tf:"data_disk,omitempty"`

	// Should Virtual Machine Extensions be run on Overprovisioned Virtual Machines in the Scale Set? Defaults to false.
	DoNotRunExtensionsOnOverprovisionedMachines *bool `json:"doNotRunExtensionsOnOverprovisionedMachines,omitempty" tf:"do_not_run_extensions_on_overprovisioned_machines,omitempty"`

	// Specifies the Edge Zone within the Azure Region where this Windows Virtual Machine Scale Set should exist. Changing this forces a new Windows Virtual Machine Scale Set to be created.
	EdgeZone *string `json:"edgeZone,omitempty" tf:"edge_zone,omitempty"`

	// Are automatic updates enabled for this Virtual Machine? Defaults to true.
	EnableAutomaticUpdates *bool `json:"enableAutomaticUpdates,omitempty" tf:"enable_automatic_updates,omitempty"`

	// Should all of the disks (including the temp disk) attached to this Virtual Machine be encrypted by enabling Encryption at Host?
	EncryptionAtHostEnabled *bool `json:"encryptionAtHostEnabled,omitempty" tf:"encryption_at_host_enabled,omitempty"`

	// Specifies the eviction policy for Virtual Machines in this Scale Set. Possible values are Deallocate and Delete. Changing this forces a new resource to be created.
	EvictionPolicy *string `json:"evictionPolicy,omitempty" tf:"eviction_policy,omitempty"`

	// One or more extension blocks as defined below
	Extension []WindowsVirtualMachineScaleSetExtensionInitParameters `json:"extension,omitempty" tf:"extension,omitempty"`

	// Should extension operations be allowed on the Virtual Machine Scale Set? Possible values are true or false. Defaults to true. Changing this forces a new Windows Virtual Machine Scale Set to be created.
	ExtensionOperationsEnabled *bool `json:"extensionOperationsEnabled,omitempty" tf:"extension_operations_enabled,omitempty"`

	// Specifies the duration allocated for all extensions to start. The time duration should be between 15 minutes and 120 minutes (inclusive) and should be specified in ISO 8601 format. Defaults to PT1H30M.
	ExtensionsTimeBudget *string `json:"extensionsTimeBudget,omitempty" tf:"extensions_time_budget,omitempty"`

	// One or more gallery_application blocks as defined below.
	GalleryApplication []WindowsVirtualMachineScaleSetGalleryApplicationInitParameters `json:"galleryApplication,omitempty" tf:"gallery_application,omitempty"`

	GalleryApplications []WindowsVirtualMachineScaleSetGalleryApplicationsInitParameters `json:"galleryApplications,omitempty" tf:"gallery_applications,omitempty"`

	// The ID of a Load Balancer Probe which should be used to determine the health of an instance. This is Required and can only be specified when upgrade_mode is set to Automatic or Rolling.
	HealthProbeID *string `json:"healthProbeId,omitempty" tf:"health_probe_id,omitempty"`

	// Specifies the ID of the dedicated host group that the virtual machine scale set resides in. Changing this forces a new resource to be created.
	HostGroupID *string `json:"hostGroupId,omitempty" tf:"host_group_id,omitempty"`

	// An identity block as defined below.
	Identity []WindowsVirtualMachineScaleSetIdentityInitParameters `json:"identity,omitempty" tf:"identity,omitempty"`

	// The number of Virtual Machines in the Scale Set.
	Instances *float64 `json:"instances,omitempty" tf:"instances,omitempty"`

	// Specifies the type of on-premise license (also known as Azure Hybrid Use Benefit) which should be used for this Virtual Machine Scale Set. Possible values are None, Windows_Client and Windows_Server.
	LicenseType *string `json:"licenseType,omitempty" tf:"license_type,omitempty"`

	// The Azure location where the Windows Virtual Machine Scale Set should exist. Changing this forces a new resource to be created.
	Location *string `json:"location,omitempty" tf:"location,omitempty"`

	// The maximum price you're willing to pay for each Virtual Machine in this Scale Set, in US Dollars; which must be greater than the current spot price. If this bid price falls below the current spot price the Virtual Machines in the Scale Set will be evicted using the eviction_policy. Defaults to -1, which means that each Virtual Machine in the Scale Set should not be evicted for price reasons.
	MaxBidPrice *float64 `json:"maxBidPrice,omitempty" tf:"max_bid_price,omitempty"`

	// One or more network_interface blocks as defined below.
	NetworkInterface []WindowsVirtualMachineScaleSetNetworkInterfaceInitParameters `json:"networkInterface,omitempty" tf:"network_interface,omitempty"`

	// An os_disk block as defined below.
	OsDisk []WindowsVirtualMachineScaleSetOsDiskInitParameters `json:"osDisk,omitempty" tf:"os_disk,omitempty"`

	// Should Azure over-provision Virtual Machines in this Scale Set? This means that multiple Virtual Machines will be provisioned and Azure will keep the instances which become available first - which improves provisioning success rates and improves deployment time. You're not billed for these over-provisioned VM's and they don't count towards the Subscription Quota. Defaults to true.
	Overprovision *bool `json:"overprovision,omitempty" tf:"overprovision,omitempty"`

	// A plan block as defined below. Changing this forces a new resource to be created.
	Plan []WindowsVirtualMachineScaleSetPlanInitParameters `json:"plan,omitempty" tf:"plan,omitempty"`

	// Specifies the number of fault domains that are used by this Linux Virtual Machine Scale Set. Changing this forces a new resource to be created.
	PlatformFaultDomainCount *float64 `json:"platformFaultDomainCount,omitempty" tf:"platform_fault_domain_count,omitempty"`

	// The Priority of this Virtual Machine Scale Set. Possible values are Regular and Spot. Defaults to Regular. Changing this value forces a new resource.
	Priority *string `json:"priority,omitempty" tf:"priority,omitempty"`

	// Should the Azure VM Agent be provisioned on each Virtual Machine in the Scale Set? Defaults to true. Changing this value forces a new resource to be created.
	ProvisionVMAgent *bool `json:"provisionVmAgent,omitempty" tf:"provision_vm_agent,omitempty"`

	// The ID of the Proximity Placement Group in which the Virtual Machine Scale Set should be assigned to. Changing this forces a new resource to be created.
	ProximityPlacementGroupID *string `json:"proximityPlacementGroupId,omitempty" tf:"proximity_placement_group_id,omitempty"`

	// A rolling_upgrade_policy block as defined below. This is Required and can only be specified when upgrade_mode is set to Automatic or Rolling. Changing this forces a new resource to be created.
	RollingUpgradePolicy []WindowsVirtualMachineScaleSetRollingUpgradePolicyInitParameters `json:"rollingUpgradePolicy,omitempty" tf:"rolling_upgrade_policy,omitempty"`

	// A scale_in block as defined below.
	ScaleIn []WindowsVirtualMachineScaleSetScaleInInitParameters `json:"scaleIn,omitempty" tf:"scale_in,omitempty"`

	// Deprecated: scaleInPolicy will be removed in favour of the scaleIn code block.
	ScaleInPolicy *string `json:"scaleInPolicy,omitempty" tf:"scale_in_policy,omitempty"`

	// One or more secret blocks as defined below.
	Secret []WindowsVirtualMachineScaleSetSecretInitParameters `json:"secret,omitempty" tf:"secret,omitempty"`

	// Specifies if Secure Boot and Trusted Launch is enabled for the Virtual Machine. Changing this forces a new resource to be created.
	SecureBootEnabled *bool `json:"secureBootEnabled,omitempty" tf:"secure_boot_enabled,omitempty"`

	// Should this Virtual Machine Scale Set be limited to a Single Placement Group, which means the number of instances will be capped at 100 Virtual Machines. Defaults to true.
	SinglePlacementGroup *bool `json:"singlePlacementGroup,omitempty" tf:"single_placement_group,omitempty"`

	// The Virtual Machine SKU for the Scale Set, such as Standard_F2.
	Sku *string `json:"sku,omitempty" tf:"sku,omitempty"`

	// The ID of an Image which each Virtual Machine in this Scale Set should be based on. Possible Image ID types include Image ID, Shared Image ID, Shared Image Version ID, Community Gallery Image ID, Community Gallery Image Version ID, Shared Gallery Image ID and Shared Gallery Image Version ID.
	SourceImageID *string `json:"sourceImageId,omitempty" tf:"source_image_id,omitempty"`

	// A source_image_reference block as defined below.
	SourceImageReference []WindowsVirtualMachineScaleSetSourceImageReferenceInitParameters `json:"sourceImageReference,omitempty" tf:"source_image_reference,omitempty"`

	// A spot_restore block as defined below.
	SpotRestore []WindowsVirtualMachineScaleSetSpotRestoreInitParameters `json:"spotRestore,omitempty" tf:"spot_restore,omitempty"`

	// A mapping of tags which should be assigned to this Virtual Machine Scale Set.
	// +mapType=granular
	Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"`

	// A terminate_notification block as defined below.
	TerminateNotification []WindowsVirtualMachineScaleSetTerminateNotificationInitParameters `json:"terminateNotification,omitempty" tf:"terminate_notification,omitempty"`

	// A termination_notification block as defined below.
	TerminationNotification []WindowsVirtualMachineScaleSetTerminationNotificationInitParameters `json:"terminationNotification,omitempty" tf:"termination_notification,omitempty"`

	// Specifies the time zone of the virtual machine, the possible values are defined here.
	Timezone *string `json:"timezone,omitempty" tf:"timezone,omitempty"`

	// Specifies how Upgrades (e.g. changing the Image/SKU) should be performed to Virtual Machine Instances. Possible values are Automatic, Manual and Rolling. Defaults to Manual. Changing this forces a new resource to be created.
	UpgradeMode *string `json:"upgradeMode,omitempty" tf:"upgrade_mode,omitempty"`

	// The Base64-Encoded User Data which should be used for this Virtual Machine Scale Set.
	UserData *string `json:"userData,omitempty" tf:"user_data,omitempty"`

	// Specifies if vTPM (Virtual Trusted Platform Module) and Trusted Launch is enabled for the Virtual Machine. Changing this forces a new resource to be created.
	VtpmEnabled *bool `json:"vtpmEnabled,omitempty" tf:"vtpm_enabled,omitempty"`

	// One or more winrm_listener blocks as defined below. Changing this forces a new resource to be created.
	WinrmListener []WindowsVirtualMachineScaleSetWinrmListenerInitParameters `json:"winrmListener,omitempty" tf:"winrm_listener,omitempty"`

	// Should the Virtual Machines in this Scale Set be strictly evenly distributed across Availability Zones? Defaults to false. Changing this forces a new resource to be created.
	ZoneBalance *bool `json:"zoneBalance,omitempty" tf:"zone_balance,omitempty"`

	// Specifies a list of Availability Zones in which this Windows Virtual Machine Scale Set should be located. Changing this forces a new Windows Virtual Machine Scale Set to be created.
	// +listType=set
	Zones []*string `json:"zones,omitempty" tf:"zones,omitempty"`
}

func (*WindowsVirtualMachineScaleSetInitParameters) DeepCopy added in v0.35.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineScaleSetInitParameters.

func (*WindowsVirtualMachineScaleSetInitParameters) DeepCopyInto added in v0.35.0

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type WindowsVirtualMachineScaleSetList

type WindowsVirtualMachineScaleSetList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	Items           []WindowsVirtualMachineScaleSet `json:"items"`
}

WindowsVirtualMachineScaleSetList contains a list of WindowsVirtualMachineScaleSets

func (*WindowsVirtualMachineScaleSetList) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineScaleSetList.

func (*WindowsVirtualMachineScaleSetList) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*WindowsVirtualMachineScaleSetList) DeepCopyObject

func (in *WindowsVirtualMachineScaleSetList) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

func (*WindowsVirtualMachineScaleSetList) GetItems

GetItems of this WindowsVirtualMachineScaleSetList.

type WindowsVirtualMachineScaleSetNetworkInterfaceIPConfigurationInitParameters added in v0.35.0

type WindowsVirtualMachineScaleSetNetworkInterfaceIPConfigurationInitParameters struct {

	// A list of Backend Address Pools ID's from a Application Gateway which this Virtual Machine Scale Set should be connected to.
	// +listType=set
	ApplicationGatewayBackendAddressPoolIds []*string `json:"applicationGatewayBackendAddressPoolIds,omitempty" tf:"application_gateway_backend_address_pool_ids,omitempty"`

	// A list of Application Security Group ID's which this Virtual Machine Scale Set should be connected to.
	// +listType=set
	ApplicationSecurityGroupIds []*string `json:"applicationSecurityGroupIds,omitempty" tf:"application_security_group_ids,omitempty"`

	// A list of Backend Address Pools ID's from a Load Balancer which this Virtual Machine Scale Set should be connected to.
	// +listType=set
	LoadBalancerBackendAddressPoolIds []*string `json:"loadBalancerBackendAddressPoolIds,omitempty" tf:"load_balancer_backend_address_pool_ids,omitempty"`

	// A list of NAT Rule ID's from a Load Balancer which this Virtual Machine Scale Set should be connected to.
	// +listType=set
	LoadBalancerInboundNATRulesIds []*string `json:"loadBalancerInboundNatRulesIds,omitempty" tf:"load_balancer_inbound_nat_rules_ids,omitempty"`

	// The Name of the Public IP Address Configuration.
	Name *string `json:"name,omitempty" tf:"name,omitempty"`

	// Is this the Primary IP Configuration?
	Primary *bool `json:"primary,omitempty" tf:"primary,omitempty"`

	// A public_ip_address block as defined below.
	PublicIPAddress []NetworkInterfaceIPConfigurationPublicIPAddressInitParameters `json:"publicIpAddress,omitempty" tf:"public_ip_address,omitempty"`

	// The ID of the Subnet which this IP Configuration should be connected to.
	// +crossplane:generate:reference:type=github.com/upbound/provider-azure/apis/network/v1beta1.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:"-"`

	// Specifies the version of the image used to create the virtual machines.
	Version *string `json:"version,omitempty" tf:"version,omitempty"`
}

func (*WindowsVirtualMachineScaleSetNetworkInterfaceIPConfigurationInitParameters) DeepCopy added in v0.35.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineScaleSetNetworkInterfaceIPConfigurationInitParameters.

func (*WindowsVirtualMachineScaleSetNetworkInterfaceIPConfigurationInitParameters) DeepCopyInto added in v0.35.0

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type WindowsVirtualMachineScaleSetNetworkInterfaceIPConfigurationObservation

type WindowsVirtualMachineScaleSetNetworkInterfaceIPConfigurationObservation struct {

	// A list of Backend Address Pools ID's from a Application Gateway which this Virtual Machine Scale Set should be connected to.
	// +listType=set
	ApplicationGatewayBackendAddressPoolIds []*string `json:"applicationGatewayBackendAddressPoolIds,omitempty" tf:"application_gateway_backend_address_pool_ids,omitempty"`

	// A list of Application Security Group ID's which this Virtual Machine Scale Set should be connected to.
	// +listType=set
	ApplicationSecurityGroupIds []*string `json:"applicationSecurityGroupIds,omitempty" tf:"application_security_group_ids,omitempty"`

	// A list of Backend Address Pools ID's from a Load Balancer which this Virtual Machine Scale Set should be connected to.
	// +listType=set
	LoadBalancerBackendAddressPoolIds []*string `json:"loadBalancerBackendAddressPoolIds,omitempty" tf:"load_balancer_backend_address_pool_ids,omitempty"`

	// A list of NAT Rule ID's from a Load Balancer which this Virtual Machine Scale Set should be connected to.
	// +listType=set
	LoadBalancerInboundNATRulesIds []*string `json:"loadBalancerInboundNatRulesIds,omitempty" tf:"load_balancer_inbound_nat_rules_ids,omitempty"`

	// The Name of the Public IP Address Configuration.
	Name *string `json:"name,omitempty" tf:"name,omitempty"`

	// Is this the Primary IP Configuration?
	Primary *bool `json:"primary,omitempty" tf:"primary,omitempty"`

	// A public_ip_address block as defined below.
	PublicIPAddress []NetworkInterfaceIPConfigurationPublicIPAddressObservation `json:"publicIpAddress,omitempty" tf:"public_ip_address,omitempty"`

	// The ID of the Subnet which this IP Configuration should be connected to.
	SubnetID *string `json:"subnetId,omitempty" tf:"subnet_id,omitempty"`

	// Specifies the version of the image used to create the virtual machines.
	Version *string `json:"version,omitempty" tf:"version,omitempty"`
}

func (*WindowsVirtualMachineScaleSetNetworkInterfaceIPConfigurationObservation) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineScaleSetNetworkInterfaceIPConfigurationObservation.

func (*WindowsVirtualMachineScaleSetNetworkInterfaceIPConfigurationObservation) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type WindowsVirtualMachineScaleSetNetworkInterfaceIPConfigurationParameters

type WindowsVirtualMachineScaleSetNetworkInterfaceIPConfigurationParameters struct {

	// A list of Backend Address Pools ID's from a Application Gateway which this Virtual Machine Scale Set should be connected to.
	// +kubebuilder:validation:Optional
	// +listType=set
	ApplicationGatewayBackendAddressPoolIds []*string `json:"applicationGatewayBackendAddressPoolIds,omitempty" tf:"application_gateway_backend_address_pool_ids,omitempty"`

	// A list of Application Security Group ID's which this Virtual Machine Scale Set should be connected to.
	// +kubebuilder:validation:Optional
	// +listType=set
	ApplicationSecurityGroupIds []*string `json:"applicationSecurityGroupIds,omitempty" tf:"application_security_group_ids,omitempty"`

	// A list of Backend Address Pools ID's from a Load Balancer which this Virtual Machine Scale Set should be connected to.
	// +kubebuilder:validation:Optional
	// +listType=set
	LoadBalancerBackendAddressPoolIds []*string `json:"loadBalancerBackendAddressPoolIds,omitempty" tf:"load_balancer_backend_address_pool_ids,omitempty"`

	// A list of NAT Rule ID's from a Load Balancer which this Virtual Machine Scale Set should be connected to.
	// +kubebuilder:validation:Optional
	// +listType=set
	LoadBalancerInboundNATRulesIds []*string `json:"loadBalancerInboundNatRulesIds,omitempty" tf:"load_balancer_inbound_nat_rules_ids,omitempty"`

	// The Name of the Public IP Address Configuration.
	// +kubebuilder:validation:Optional
	Name *string `json:"name" tf:"name,omitempty"`

	// Is this the Primary IP Configuration?
	// +kubebuilder:validation:Optional
	Primary *bool `json:"primary,omitempty" tf:"primary,omitempty"`

	// A public_ip_address block as defined below.
	// +kubebuilder:validation:Optional
	PublicIPAddress []NetworkInterfaceIPConfigurationPublicIPAddressParameters `json:"publicIpAddress,omitempty" tf:"public_ip_address,omitempty"`

	// The ID of the Subnet which this IP Configuration should be connected to.
	// +crossplane:generate:reference:type=github.com/upbound/provider-azure/apis/network/v1beta1.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:"-"`

	// Specifies the version of the image used to create the virtual machines.
	// +kubebuilder:validation:Optional
	Version *string `json:"version,omitempty" tf:"version,omitempty"`
}

func (*WindowsVirtualMachineScaleSetNetworkInterfaceIPConfigurationParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineScaleSetNetworkInterfaceIPConfigurationParameters.

func (*WindowsVirtualMachineScaleSetNetworkInterfaceIPConfigurationParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type WindowsVirtualMachineScaleSetNetworkInterfaceInitParameters added in v0.35.0

type WindowsVirtualMachineScaleSetNetworkInterfaceInitParameters struct {

	// A list of IP Addresses of DNS Servers which should be assigned to the Network Interface.
	DNSServers []*string `json:"dnsServers,omitempty" tf:"dns_servers,omitempty"`

	// Does this Network Interface support Accelerated Networking? Defaults to false.
	EnableAcceleratedNetworking *bool `json:"enableAcceleratedNetworking,omitempty" tf:"enable_accelerated_networking,omitempty"`

	// Does this Network Interface support IP Forwarding? Defaults to false.
	EnableIPForwarding *bool `json:"enableIpForwarding,omitempty" tf:"enable_ip_forwarding,omitempty"`

	// One or more ip_configuration blocks as defined above.
	IPConfiguration []WindowsVirtualMachineScaleSetNetworkInterfaceIPConfigurationInitParameters `json:"ipConfiguration,omitempty" tf:"ip_configuration,omitempty"`

	// The Name which should be used for this Network Interface. Changing this forces a new resource to be created.
	Name *string `json:"name,omitempty" tf:"name,omitempty"`

	// The ID of a Network Security Group which should be assigned to this Network Interface.
	NetworkSecurityGroupID *string `json:"networkSecurityGroupId,omitempty" tf:"network_security_group_id,omitempty"`

	// Is this the Primary IP Configuration?
	Primary *bool `json:"primary,omitempty" tf:"primary,omitempty"`
}

func (*WindowsVirtualMachineScaleSetNetworkInterfaceInitParameters) DeepCopy added in v0.35.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineScaleSetNetworkInterfaceInitParameters.

func (*WindowsVirtualMachineScaleSetNetworkInterfaceInitParameters) DeepCopyInto added in v0.35.0

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type WindowsVirtualMachineScaleSetNetworkInterfaceObservation

type WindowsVirtualMachineScaleSetNetworkInterfaceObservation struct {

	// A list of IP Addresses of DNS Servers which should be assigned to the Network Interface.
	DNSServers []*string `json:"dnsServers,omitempty" tf:"dns_servers,omitempty"`

	// Does this Network Interface support Accelerated Networking? Defaults to false.
	EnableAcceleratedNetworking *bool `json:"enableAcceleratedNetworking,omitempty" tf:"enable_accelerated_networking,omitempty"`

	// Does this Network Interface support IP Forwarding? Defaults to false.
	EnableIPForwarding *bool `json:"enableIpForwarding,omitempty" tf:"enable_ip_forwarding,omitempty"`

	// One or more ip_configuration blocks as defined above.
	IPConfiguration []WindowsVirtualMachineScaleSetNetworkInterfaceIPConfigurationObservation `json:"ipConfiguration,omitempty" tf:"ip_configuration,omitempty"`

	// The Name which should be used for this Network Interface. Changing this forces a new resource to be created.
	Name *string `json:"name,omitempty" tf:"name,omitempty"`

	// The ID of a Network Security Group which should be assigned to this Network Interface.
	NetworkSecurityGroupID *string `json:"networkSecurityGroupId,omitempty" tf:"network_security_group_id,omitempty"`

	// Is this the Primary IP Configuration?
	Primary *bool `json:"primary,omitempty" tf:"primary,omitempty"`
}

func (*WindowsVirtualMachineScaleSetNetworkInterfaceObservation) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineScaleSetNetworkInterfaceObservation.

func (*WindowsVirtualMachineScaleSetNetworkInterfaceObservation) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type WindowsVirtualMachineScaleSetNetworkInterfaceParameters

type WindowsVirtualMachineScaleSetNetworkInterfaceParameters struct {

	// A list of IP Addresses of DNS Servers which should be assigned to the Network Interface.
	// +kubebuilder:validation:Optional
	DNSServers []*string `json:"dnsServers,omitempty" tf:"dns_servers,omitempty"`

	// Does this Network Interface support Accelerated Networking? Defaults to false.
	// +kubebuilder:validation:Optional
	EnableAcceleratedNetworking *bool `json:"enableAcceleratedNetworking,omitempty" tf:"enable_accelerated_networking,omitempty"`

	// Does this Network Interface support IP Forwarding? Defaults to false.
	// +kubebuilder:validation:Optional
	EnableIPForwarding *bool `json:"enableIpForwarding,omitempty" tf:"enable_ip_forwarding,omitempty"`

	// One or more ip_configuration blocks as defined above.
	// +kubebuilder:validation:Optional
	IPConfiguration []WindowsVirtualMachineScaleSetNetworkInterfaceIPConfigurationParameters `json:"ipConfiguration" tf:"ip_configuration,omitempty"`

	// The Name which should be used for this Network Interface. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	Name *string `json:"name" tf:"name,omitempty"`

	// The ID of a Network Security Group which should be assigned to this Network Interface.
	// +kubebuilder:validation:Optional
	NetworkSecurityGroupID *string `json:"networkSecurityGroupId,omitempty" tf:"network_security_group_id,omitempty"`

	// Is this the Primary IP Configuration?
	// +kubebuilder:validation:Optional
	Primary *bool `json:"primary,omitempty" tf:"primary,omitempty"`
}

func (*WindowsVirtualMachineScaleSetNetworkInterfaceParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineScaleSetNetworkInterfaceParameters.

func (*WindowsVirtualMachineScaleSetNetworkInterfaceParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type WindowsVirtualMachineScaleSetObservation

type WindowsVirtualMachineScaleSetObservation struct {

	// An additional_capabilities block as defined below.
	AdditionalCapabilities []WindowsVirtualMachineScaleSetAdditionalCapabilitiesObservation `json:"additionalCapabilities,omitempty" tf:"additional_capabilities,omitempty"`

	// One or more additional_unattend_content blocks as defined below. Changing this forces a new resource to be created.
	AdditionalUnattendContent []WindowsVirtualMachineScaleSetAdditionalUnattendContentObservation `json:"additionalUnattendContent,omitempty" tf:"additional_unattend_content,omitempty"`

	// The username of the local administrator on each Virtual Machine Scale Set instance. Changing this forces a new resource to be created.
	AdminUsername *string `json:"adminUsername,omitempty" tf:"admin_username,omitempty"`

	// An automatic_instance_repair block as defined below. To enable the automatic instance repair, this Virtual Machine Scale Set must have a valid health_probe_id or an Application Health Extension.
	AutomaticInstanceRepair []WindowsVirtualMachineScaleSetAutomaticInstanceRepairObservation `json:"automaticInstanceRepair,omitempty" tf:"automatic_instance_repair,omitempty"`

	// An automatic_os_upgrade_policy block as defined below. This can only be specified when upgrade_mode is set to either Automatic or Rolling.
	AutomaticOsUpgradePolicy []WindowsVirtualMachineScaleSetAutomaticOsUpgradePolicyObservation `json:"automaticOsUpgradePolicy,omitempty" tf:"automatic_os_upgrade_policy,omitempty"`

	// A boot_diagnostics block as defined below.
	BootDiagnostics []WindowsVirtualMachineScaleSetBootDiagnosticsObservation `json:"bootDiagnostics,omitempty" tf:"boot_diagnostics,omitempty"`

	// Specifies the ID of the Capacity Reservation Group which the Virtual Machine Scale Set should be allocated to. Changing this forces a new resource to be created.
	CapacityReservationGroupID *string `json:"capacityReservationGroupId,omitempty" tf:"capacity_reservation_group_id,omitempty"`

	// The prefix which should be used for the name of the Virtual Machines in this Scale Set. If unspecified this defaults to the value for the name field. If the value of the name field is not a valid computer_name_prefix, then you must specify computer_name_prefix. Changing this forces a new resource to be created.
	ComputerNamePrefix *string `json:"computerNamePrefix,omitempty" tf:"computer_name_prefix,omitempty"`

	// One or more data_disk blocks as defined below.
	DataDisk []WindowsVirtualMachineScaleSetDataDiskObservation `json:"dataDisk,omitempty" tf:"data_disk,omitempty"`

	// Should Virtual Machine Extensions be run on Overprovisioned Virtual Machines in the Scale Set? Defaults to false.
	DoNotRunExtensionsOnOverprovisionedMachines *bool `json:"doNotRunExtensionsOnOverprovisionedMachines,omitempty" tf:"do_not_run_extensions_on_overprovisioned_machines,omitempty"`

	// Specifies the Edge Zone within the Azure Region where this Windows Virtual Machine Scale Set should exist. Changing this forces a new Windows Virtual Machine Scale Set to be created.
	EdgeZone *string `json:"edgeZone,omitempty" tf:"edge_zone,omitempty"`

	// Are automatic updates enabled for this Virtual Machine? Defaults to true.
	EnableAutomaticUpdates *bool `json:"enableAutomaticUpdates,omitempty" tf:"enable_automatic_updates,omitempty"`

	// Should all of the disks (including the temp disk) attached to this Virtual Machine be encrypted by enabling Encryption at Host?
	EncryptionAtHostEnabled *bool `json:"encryptionAtHostEnabled,omitempty" tf:"encryption_at_host_enabled,omitempty"`

	// Specifies the eviction policy for Virtual Machines in this Scale Set. Possible values are Deallocate and Delete. Changing this forces a new resource to be created.
	EvictionPolicy *string `json:"evictionPolicy,omitempty" tf:"eviction_policy,omitempty"`

	// One or more extension blocks as defined below
	Extension []WindowsVirtualMachineScaleSetExtensionObservation `json:"extension,omitempty" tf:"extension,omitempty"`

	// Should extension operations be allowed on the Virtual Machine Scale Set? Possible values are true or false. Defaults to true. Changing this forces a new Windows Virtual Machine Scale Set to be created.
	ExtensionOperationsEnabled *bool `json:"extensionOperationsEnabled,omitempty" tf:"extension_operations_enabled,omitempty"`

	// Specifies the duration allocated for all extensions to start. The time duration should be between 15 minutes and 120 minutes (inclusive) and should be specified in ISO 8601 format. Defaults to PT1H30M.
	ExtensionsTimeBudget *string `json:"extensionsTimeBudget,omitempty" tf:"extensions_time_budget,omitempty"`

	// One or more gallery_application blocks as defined below.
	GalleryApplication []WindowsVirtualMachineScaleSetGalleryApplicationObservation `json:"galleryApplication,omitempty" tf:"gallery_application,omitempty"`

	GalleryApplications []WindowsVirtualMachineScaleSetGalleryApplicationsObservation `json:"galleryApplications,omitempty" tf:"gallery_applications,omitempty"`

	// The ID of a Load Balancer Probe which should be used to determine the health of an instance. This is Required and can only be specified when upgrade_mode is set to Automatic or Rolling.
	HealthProbeID *string `json:"healthProbeId,omitempty" tf:"health_probe_id,omitempty"`

	// Specifies the ID of the dedicated host group that the virtual machine scale set resides in. Changing this forces a new resource to be created.
	HostGroupID *string `json:"hostGroupId,omitempty" tf:"host_group_id,omitempty"`

	// The ID of the Windows Virtual Machine Scale Set.
	ID *string `json:"id,omitempty" tf:"id,omitempty"`

	// An identity block as defined below.
	Identity []WindowsVirtualMachineScaleSetIdentityObservation `json:"identity,omitempty" tf:"identity,omitempty"`

	// The number of Virtual Machines in the Scale Set.
	Instances *float64 `json:"instances,omitempty" tf:"instances,omitempty"`

	// Specifies the type of on-premise license (also known as Azure Hybrid Use Benefit) which should be used for this Virtual Machine Scale Set. Possible values are None, Windows_Client and Windows_Server.
	LicenseType *string `json:"licenseType,omitempty" tf:"license_type,omitempty"`

	// The Azure location where the Windows Virtual Machine Scale Set should exist. Changing this forces a new resource to be created.
	Location *string `json:"location,omitempty" tf:"location,omitempty"`

	// The maximum price you're willing to pay for each Virtual Machine in this Scale Set, in US Dollars; which must be greater than the current spot price. If this bid price falls below the current spot price the Virtual Machines in the Scale Set will be evicted using the eviction_policy. Defaults to -1, which means that each Virtual Machine in the Scale Set should not be evicted for price reasons.
	MaxBidPrice *float64 `json:"maxBidPrice,omitempty" tf:"max_bid_price,omitempty"`

	// One or more network_interface blocks as defined below.
	NetworkInterface []WindowsVirtualMachineScaleSetNetworkInterfaceObservation `json:"networkInterface,omitempty" tf:"network_interface,omitempty"`

	// An os_disk block as defined below.
	OsDisk []WindowsVirtualMachineScaleSetOsDiskObservation `json:"osDisk,omitempty" tf:"os_disk,omitempty"`

	// Should Azure over-provision Virtual Machines in this Scale Set? This means that multiple Virtual Machines will be provisioned and Azure will keep the instances which become available first - which improves provisioning success rates and improves deployment time. You're not billed for these over-provisioned VM's and they don't count towards the Subscription Quota. Defaults to true.
	Overprovision *bool `json:"overprovision,omitempty" tf:"overprovision,omitempty"`

	// A plan block as defined below. Changing this forces a new resource to be created.
	Plan []WindowsVirtualMachineScaleSetPlanObservation `json:"plan,omitempty" tf:"plan,omitempty"`

	// Specifies the number of fault domains that are used by this Linux Virtual Machine Scale Set. Changing this forces a new resource to be created.
	PlatformFaultDomainCount *float64 `json:"platformFaultDomainCount,omitempty" tf:"platform_fault_domain_count,omitempty"`

	// The Priority of this Virtual Machine Scale Set. Possible values are Regular and Spot. Defaults to Regular. Changing this value forces a new resource.
	Priority *string `json:"priority,omitempty" tf:"priority,omitempty"`

	// Should the Azure VM Agent be provisioned on each Virtual Machine in the Scale Set? Defaults to true. Changing this value forces a new resource to be created.
	ProvisionVMAgent *bool `json:"provisionVmAgent,omitempty" tf:"provision_vm_agent,omitempty"`

	// The ID of the Proximity Placement Group in which the Virtual Machine Scale Set should be assigned to. Changing this forces a new resource to be created.
	ProximityPlacementGroupID *string `json:"proximityPlacementGroupId,omitempty" tf:"proximity_placement_group_id,omitempty"`

	// The name of the Resource Group in which the Windows Virtual Machine Scale Set should be exist. Changing this forces a new resource to be created.
	ResourceGroupName *string `json:"resourceGroupName,omitempty" tf:"resource_group_name,omitempty"`

	// A rolling_upgrade_policy block as defined below. This is Required and can only be specified when upgrade_mode is set to Automatic or Rolling. Changing this forces a new resource to be created.
	RollingUpgradePolicy []WindowsVirtualMachineScaleSetRollingUpgradePolicyObservation `json:"rollingUpgradePolicy,omitempty" tf:"rolling_upgrade_policy,omitempty"`

	// A scale_in block as defined below.
	ScaleIn []WindowsVirtualMachineScaleSetScaleInObservation `json:"scaleIn,omitempty" tf:"scale_in,omitempty"`

	// Deprecated: scaleInPolicy will be removed in favour of the scaleIn code block.
	ScaleInPolicy *string `json:"scaleInPolicy,omitempty" tf:"scale_in_policy,omitempty"`

	// One or more secret blocks as defined below.
	Secret []WindowsVirtualMachineScaleSetSecretObservation `json:"secret,omitempty" tf:"secret,omitempty"`

	// Specifies if Secure Boot and Trusted Launch is enabled for the Virtual Machine. Changing this forces a new resource to be created.
	SecureBootEnabled *bool `json:"secureBootEnabled,omitempty" tf:"secure_boot_enabled,omitempty"`

	// Should this Virtual Machine Scale Set be limited to a Single Placement Group, which means the number of instances will be capped at 100 Virtual Machines. Defaults to true.
	SinglePlacementGroup *bool `json:"singlePlacementGroup,omitempty" tf:"single_placement_group,omitempty"`

	// The Virtual Machine SKU for the Scale Set, such as Standard_F2.
	Sku *string `json:"sku,omitempty" tf:"sku,omitempty"`

	// The ID of an Image which each Virtual Machine in this Scale Set should be based on. Possible Image ID types include Image ID, Shared Image ID, Shared Image Version ID, Community Gallery Image ID, Community Gallery Image Version ID, Shared Gallery Image ID and Shared Gallery Image Version ID.
	SourceImageID *string `json:"sourceImageId,omitempty" tf:"source_image_id,omitempty"`

	// A source_image_reference block as defined below.
	SourceImageReference []WindowsVirtualMachineScaleSetSourceImageReferenceObservation `json:"sourceImageReference,omitempty" tf:"source_image_reference,omitempty"`

	// A spot_restore block as defined below.
	SpotRestore []WindowsVirtualMachineScaleSetSpotRestoreObservation `json:"spotRestore,omitempty" tf:"spot_restore,omitempty"`

	// A mapping of tags which should be assigned to this Virtual Machine Scale Set.
	// +mapType=granular
	Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"`

	// A terminate_notification block as defined below.
	TerminateNotification []WindowsVirtualMachineScaleSetTerminateNotificationObservation `json:"terminateNotification,omitempty" tf:"terminate_notification,omitempty"`

	// A termination_notification block as defined below.
	TerminationNotification []WindowsVirtualMachineScaleSetTerminationNotificationObservation `json:"terminationNotification,omitempty" tf:"termination_notification,omitempty"`

	// Specifies the time zone of the virtual machine, the possible values are defined here.
	Timezone *string `json:"timezone,omitempty" tf:"timezone,omitempty"`

	// The Unique ID for this Windows Virtual Machine Scale Set.
	UniqueID *string `json:"uniqueId,omitempty" tf:"unique_id,omitempty"`

	// Specifies how Upgrades (e.g. changing the Image/SKU) should be performed to Virtual Machine Instances. Possible values are Automatic, Manual and Rolling. Defaults to Manual. Changing this forces a new resource to be created.
	UpgradeMode *string `json:"upgradeMode,omitempty" tf:"upgrade_mode,omitempty"`

	// The Base64-Encoded User Data which should be used for this Virtual Machine Scale Set.
	UserData *string `json:"userData,omitempty" tf:"user_data,omitempty"`

	// Specifies if vTPM (Virtual Trusted Platform Module) and Trusted Launch is enabled for the Virtual Machine. Changing this forces a new resource to be created.
	VtpmEnabled *bool `json:"vtpmEnabled,omitempty" tf:"vtpm_enabled,omitempty"`

	// One or more winrm_listener blocks as defined below. Changing this forces a new resource to be created.
	WinrmListener []WindowsVirtualMachineScaleSetWinrmListenerObservation `json:"winrmListener,omitempty" tf:"winrm_listener,omitempty"`

	// Should the Virtual Machines in this Scale Set be strictly evenly distributed across Availability Zones? Defaults to false. Changing this forces a new resource to be created.
	ZoneBalance *bool `json:"zoneBalance,omitempty" tf:"zone_balance,omitempty"`

	// Specifies a list of Availability Zones in which this Windows Virtual Machine Scale Set should be located. Changing this forces a new Windows Virtual Machine Scale Set to be created.
	// +listType=set
	Zones []*string `json:"zones,omitempty" tf:"zones,omitempty"`
}

func (*WindowsVirtualMachineScaleSetObservation) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineScaleSetObservation.

func (*WindowsVirtualMachineScaleSetObservation) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type WindowsVirtualMachineScaleSetOsDiskDiffDiskSettingsInitParameters added in v0.35.0

type WindowsVirtualMachineScaleSetOsDiskDiffDiskSettingsInitParameters struct {

	// Specifies the Ephemeral Disk Settings for the OS Disk. At this time the only possible value is Local. Changing this forces a new resource to be created.
	Option *string `json:"option,omitempty" tf:"option,omitempty"`

	// Specifies where to store the Ephemeral Disk. Possible values are CacheDisk and ResourceDisk. Defaults to CacheDisk. Changing this forces a new resource to be created.
	Placement *string `json:"placement,omitempty" tf:"placement,omitempty"`
}

func (*WindowsVirtualMachineScaleSetOsDiskDiffDiskSettingsInitParameters) DeepCopy added in v0.35.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineScaleSetOsDiskDiffDiskSettingsInitParameters.

func (*WindowsVirtualMachineScaleSetOsDiskDiffDiskSettingsInitParameters) DeepCopyInto added in v0.35.0

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type WindowsVirtualMachineScaleSetOsDiskDiffDiskSettingsObservation

type WindowsVirtualMachineScaleSetOsDiskDiffDiskSettingsObservation struct {

	// Specifies the Ephemeral Disk Settings for the OS Disk. At this time the only possible value is Local. Changing this forces a new resource to be created.
	Option *string `json:"option,omitempty" tf:"option,omitempty"`

	// Specifies where to store the Ephemeral Disk. Possible values are CacheDisk and ResourceDisk. Defaults to CacheDisk. Changing this forces a new resource to be created.
	Placement *string `json:"placement,omitempty" tf:"placement,omitempty"`
}

func (*WindowsVirtualMachineScaleSetOsDiskDiffDiskSettingsObservation) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineScaleSetOsDiskDiffDiskSettingsObservation.

func (*WindowsVirtualMachineScaleSetOsDiskDiffDiskSettingsObservation) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type WindowsVirtualMachineScaleSetOsDiskDiffDiskSettingsParameters

type WindowsVirtualMachineScaleSetOsDiskDiffDiskSettingsParameters struct {

	// Specifies the Ephemeral Disk Settings for the OS Disk. At this time the only possible value is Local. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	Option *string `json:"option" tf:"option,omitempty"`

	// Specifies where to store the Ephemeral Disk. Possible values are CacheDisk and ResourceDisk. Defaults to CacheDisk. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	Placement *string `json:"placement,omitempty" tf:"placement,omitempty"`
}

func (*WindowsVirtualMachineScaleSetOsDiskDiffDiskSettingsParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineScaleSetOsDiskDiffDiskSettingsParameters.

func (*WindowsVirtualMachineScaleSetOsDiskDiffDiskSettingsParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type WindowsVirtualMachineScaleSetOsDiskInitParameters added in v0.35.0

type WindowsVirtualMachineScaleSetOsDiskInitParameters struct {

	// The Type of Caching which should be used for the Internal OS Disk. Possible values are None, ReadOnly and ReadWrite.
	Caching *string `json:"caching,omitempty" tf:"caching,omitempty"`

	// A diff_disk_settings block as defined above. Changing this forces a new resource to be created.
	DiffDiskSettings []WindowsVirtualMachineScaleSetOsDiskDiffDiskSettingsInitParameters `json:"diffDiskSettings,omitempty" tf:"diff_disk_settings,omitempty"`

	// The ID of the Disk Encryption Set which should be used to encrypt this OS Disk. Conflicts with secure_vm_disk_encryption_set_id. Changing this forces a new resource to be created.
	DiskEncryptionSetID *string `json:"diskEncryptionSetId,omitempty" tf:"disk_encryption_set_id,omitempty"`

	// The Size of the Internal OS Disk in GB, if you wish to vary from the size used in the image this Virtual Machine Scale Set is sourced from.
	DiskSizeGb *float64 `json:"diskSizeGb,omitempty" tf:"disk_size_gb,omitempty"`

	// The ID of the Disk Encryption Set which should be used to Encrypt the OS Disk when the Virtual Machine Scale Set is Confidential VMSS. Conflicts with disk_encryption_set_id. Changing this forces a new resource to be created.
	SecureVMDiskEncryptionSetID *string `json:"secureVmDiskEncryptionSetId,omitempty" tf:"secure_vm_disk_encryption_set_id,omitempty"`

	// Encryption Type when the Virtual Machine Scale Set is Confidential VMSS. Possible values are VMGuestStateOnly and DiskWithVMGuestState. Changing this forces a new resource to be created.
	SecurityEncryptionType *string `json:"securityEncryptionType,omitempty" tf:"security_encryption_type,omitempty"`

	// The Type of Storage Account which should back this the Internal OS Disk. Possible values include Standard_LRS, StandardSSD_LRS, StandardSSD_ZRS, Premium_LRS and Premium_ZRS. Changing this forces a new resource to be created.
	StorageAccountType *string `json:"storageAccountType,omitempty" tf:"storage_account_type,omitempty"`

	// Should Write Accelerator be Enabled for this OS Disk? Defaults to false.
	WriteAcceleratorEnabled *bool `json:"writeAcceleratorEnabled,omitempty" tf:"write_accelerator_enabled,omitempty"`
}

func (*WindowsVirtualMachineScaleSetOsDiskInitParameters) DeepCopy added in v0.35.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineScaleSetOsDiskInitParameters.

func (*WindowsVirtualMachineScaleSetOsDiskInitParameters) DeepCopyInto added in v0.35.0

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type WindowsVirtualMachineScaleSetOsDiskObservation

type WindowsVirtualMachineScaleSetOsDiskObservation struct {

	// The Type of Caching which should be used for the Internal OS Disk. Possible values are None, ReadOnly and ReadWrite.
	Caching *string `json:"caching,omitempty" tf:"caching,omitempty"`

	// A diff_disk_settings block as defined above. Changing this forces a new resource to be created.
	DiffDiskSettings []WindowsVirtualMachineScaleSetOsDiskDiffDiskSettingsObservation `json:"diffDiskSettings,omitempty" tf:"diff_disk_settings,omitempty"`

	// The ID of the Disk Encryption Set which should be used to encrypt this OS Disk. Conflicts with secure_vm_disk_encryption_set_id. Changing this forces a new resource to be created.
	DiskEncryptionSetID *string `json:"diskEncryptionSetId,omitempty" tf:"disk_encryption_set_id,omitempty"`

	// The Size of the Internal OS Disk in GB, if you wish to vary from the size used in the image this Virtual Machine Scale Set is sourced from.
	DiskSizeGb *float64 `json:"diskSizeGb,omitempty" tf:"disk_size_gb,omitempty"`

	// The ID of the Disk Encryption Set which should be used to Encrypt the OS Disk when the Virtual Machine Scale Set is Confidential VMSS. Conflicts with disk_encryption_set_id. Changing this forces a new resource to be created.
	SecureVMDiskEncryptionSetID *string `json:"secureVmDiskEncryptionSetId,omitempty" tf:"secure_vm_disk_encryption_set_id,omitempty"`

	// Encryption Type when the Virtual Machine Scale Set is Confidential VMSS. Possible values are VMGuestStateOnly and DiskWithVMGuestState. Changing this forces a new resource to be created.
	SecurityEncryptionType *string `json:"securityEncryptionType,omitempty" tf:"security_encryption_type,omitempty"`

	// The Type of Storage Account which should back this the Internal OS Disk. Possible values include Standard_LRS, StandardSSD_LRS, StandardSSD_ZRS, Premium_LRS and Premium_ZRS. Changing this forces a new resource to be created.
	StorageAccountType *string `json:"storageAccountType,omitempty" tf:"storage_account_type,omitempty"`

	// Should Write Accelerator be Enabled for this OS Disk? Defaults to false.
	WriteAcceleratorEnabled *bool `json:"writeAcceleratorEnabled,omitempty" tf:"write_accelerator_enabled,omitempty"`
}

func (*WindowsVirtualMachineScaleSetOsDiskObservation) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineScaleSetOsDiskObservation.

func (*WindowsVirtualMachineScaleSetOsDiskObservation) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type WindowsVirtualMachineScaleSetOsDiskParameters

type WindowsVirtualMachineScaleSetOsDiskParameters struct {

	// The Type of Caching which should be used for the Internal OS Disk. Possible values are None, ReadOnly and ReadWrite.
	// +kubebuilder:validation:Optional
	Caching *string `json:"caching" tf:"caching,omitempty"`

	// A diff_disk_settings block as defined above. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	DiffDiskSettings []WindowsVirtualMachineScaleSetOsDiskDiffDiskSettingsParameters `json:"diffDiskSettings,omitempty" tf:"diff_disk_settings,omitempty"`

	// The ID of the Disk Encryption Set which should be used to encrypt this OS Disk. Conflicts with secure_vm_disk_encryption_set_id. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	DiskEncryptionSetID *string `json:"diskEncryptionSetId,omitempty" tf:"disk_encryption_set_id,omitempty"`

	// The Size of the Internal OS Disk in GB, if you wish to vary from the size used in the image this Virtual Machine Scale Set is sourced from.
	// +kubebuilder:validation:Optional
	DiskSizeGb *float64 `json:"diskSizeGb,omitempty" tf:"disk_size_gb,omitempty"`

	// The ID of the Disk Encryption Set which should be used to Encrypt the OS Disk when the Virtual Machine Scale Set is Confidential VMSS. Conflicts with disk_encryption_set_id. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	SecureVMDiskEncryptionSetID *string `json:"secureVmDiskEncryptionSetId,omitempty" tf:"secure_vm_disk_encryption_set_id,omitempty"`

	// Encryption Type when the Virtual Machine Scale Set is Confidential VMSS. Possible values are VMGuestStateOnly and DiskWithVMGuestState. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	SecurityEncryptionType *string `json:"securityEncryptionType,omitempty" tf:"security_encryption_type,omitempty"`

	// The Type of Storage Account which should back this the Internal OS Disk. Possible values include Standard_LRS, StandardSSD_LRS, StandardSSD_ZRS, Premium_LRS and Premium_ZRS. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	StorageAccountType *string `json:"storageAccountType" tf:"storage_account_type,omitempty"`

	// Should Write Accelerator be Enabled for this OS Disk? Defaults to false.
	// +kubebuilder:validation:Optional
	WriteAcceleratorEnabled *bool `json:"writeAcceleratorEnabled,omitempty" tf:"write_accelerator_enabled,omitempty"`
}

func (*WindowsVirtualMachineScaleSetOsDiskParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineScaleSetOsDiskParameters.

func (*WindowsVirtualMachineScaleSetOsDiskParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type WindowsVirtualMachineScaleSetParameters

type WindowsVirtualMachineScaleSetParameters struct {

	// An additional_capabilities block as defined below.
	// +kubebuilder:validation:Optional
	AdditionalCapabilities []WindowsVirtualMachineScaleSetAdditionalCapabilitiesParameters `json:"additionalCapabilities,omitempty" tf:"additional_capabilities,omitempty"`

	// One or more additional_unattend_content blocks as defined below. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	AdditionalUnattendContent []WindowsVirtualMachineScaleSetAdditionalUnattendContentParameters `json:"additionalUnattendContent,omitempty" tf:"additional_unattend_content,omitempty"`

	// The Password which should be used for the local-administrator on this Virtual Machine. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	AdminPasswordSecretRef v1.SecretKeySelector `json:"adminPasswordSecretRef" tf:"-"`

	// The username of the local administrator on each Virtual Machine Scale Set instance. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	AdminUsername *string `json:"adminUsername,omitempty" tf:"admin_username,omitempty"`

	// An automatic_instance_repair block as defined below. To enable the automatic instance repair, this Virtual Machine Scale Set must have a valid health_probe_id or an Application Health Extension.
	// +kubebuilder:validation:Optional
	AutomaticInstanceRepair []WindowsVirtualMachineScaleSetAutomaticInstanceRepairParameters `json:"automaticInstanceRepair,omitempty" tf:"automatic_instance_repair,omitempty"`

	// An automatic_os_upgrade_policy block as defined below. This can only be specified when upgrade_mode is set to either Automatic or Rolling.
	// +kubebuilder:validation:Optional
	AutomaticOsUpgradePolicy []WindowsVirtualMachineScaleSetAutomaticOsUpgradePolicyParameters `json:"automaticOsUpgradePolicy,omitempty" tf:"automatic_os_upgrade_policy,omitempty"`

	// A boot_diagnostics block as defined below.
	// +kubebuilder:validation:Optional
	BootDiagnostics []WindowsVirtualMachineScaleSetBootDiagnosticsParameters `json:"bootDiagnostics,omitempty" tf:"boot_diagnostics,omitempty"`

	// Specifies the ID of the Capacity Reservation Group which the Virtual Machine Scale Set should be allocated to. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	CapacityReservationGroupID *string `json:"capacityReservationGroupId,omitempty" tf:"capacity_reservation_group_id,omitempty"`

	// The prefix which should be used for the name of the Virtual Machines in this Scale Set. If unspecified this defaults to the value for the name field. If the value of the name field is not a valid computer_name_prefix, then you must specify computer_name_prefix. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	ComputerNamePrefix *string `json:"computerNamePrefix,omitempty" tf:"computer_name_prefix,omitempty"`

	// The Base64-Encoded Custom Data which should be used for this Virtual Machine Scale Set.
	// +kubebuilder:validation:Optional
	CustomDataSecretRef *v1.SecretKeySelector `json:"customDataSecretRef,omitempty" tf:"-"`

	// One or more data_disk blocks as defined below.
	// +kubebuilder:validation:Optional
	DataDisk []WindowsVirtualMachineScaleSetDataDiskParameters `json:"dataDisk,omitempty" tf:"data_disk,omitempty"`

	// Should Virtual Machine Extensions be run on Overprovisioned Virtual Machines in the Scale Set? Defaults to false.
	// +kubebuilder:validation:Optional
	DoNotRunExtensionsOnOverprovisionedMachines *bool `json:"doNotRunExtensionsOnOverprovisionedMachines,omitempty" tf:"do_not_run_extensions_on_overprovisioned_machines,omitempty"`

	// Specifies the Edge Zone within the Azure Region where this Windows Virtual Machine Scale Set should exist. Changing this forces a new Windows Virtual Machine Scale Set to be created.
	// +kubebuilder:validation:Optional
	EdgeZone *string `json:"edgeZone,omitempty" tf:"edge_zone,omitempty"`

	// Are automatic updates enabled for this Virtual Machine? Defaults to true.
	// +kubebuilder:validation:Optional
	EnableAutomaticUpdates *bool `json:"enableAutomaticUpdates,omitempty" tf:"enable_automatic_updates,omitempty"`

	// Should all of the disks (including the temp disk) attached to this Virtual Machine be encrypted by enabling Encryption at Host?
	// +kubebuilder:validation:Optional
	EncryptionAtHostEnabled *bool `json:"encryptionAtHostEnabled,omitempty" tf:"encryption_at_host_enabled,omitempty"`

	// Specifies the eviction policy for Virtual Machines in this Scale Set. Possible values are Deallocate and Delete. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	EvictionPolicy *string `json:"evictionPolicy,omitempty" tf:"eviction_policy,omitempty"`

	// One or more extension blocks as defined below
	// +kubebuilder:validation:Optional
	Extension []WindowsVirtualMachineScaleSetExtensionParameters `json:"extension,omitempty" tf:"extension,omitempty"`

	// Should extension operations be allowed on the Virtual Machine Scale Set? Possible values are true or false. Defaults to true. Changing this forces a new Windows Virtual Machine Scale Set to be created.
	// +kubebuilder:validation:Optional
	ExtensionOperationsEnabled *bool `json:"extensionOperationsEnabled,omitempty" tf:"extension_operations_enabled,omitempty"`

	// Specifies the duration allocated for all extensions to start. The time duration should be between 15 minutes and 120 minutes (inclusive) and should be specified in ISO 8601 format. Defaults to PT1H30M.
	// +kubebuilder:validation:Optional
	ExtensionsTimeBudget *string `json:"extensionsTimeBudget,omitempty" tf:"extensions_time_budget,omitempty"`

	// One or more gallery_application blocks as defined below.
	// +kubebuilder:validation:Optional
	GalleryApplication []WindowsVirtualMachineScaleSetGalleryApplicationParameters `json:"galleryApplication,omitempty" tf:"gallery_application,omitempty"`

	// +kubebuilder:validation:Optional
	GalleryApplications []WindowsVirtualMachineScaleSetGalleryApplicationsParameters `json:"galleryApplications,omitempty" tf:"gallery_applications,omitempty"`

	// The ID of a Load Balancer Probe which should be used to determine the health of an instance. This is Required and can only be specified when upgrade_mode is set to Automatic or Rolling.
	// +kubebuilder:validation:Optional
	HealthProbeID *string `json:"healthProbeId,omitempty" tf:"health_probe_id,omitempty"`

	// Specifies the ID of the dedicated host group that the virtual machine scale set resides in. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	HostGroupID *string `json:"hostGroupId,omitempty" tf:"host_group_id,omitempty"`

	// An identity block as defined below.
	// +kubebuilder:validation:Optional
	Identity []WindowsVirtualMachineScaleSetIdentityParameters `json:"identity,omitempty" tf:"identity,omitempty"`

	// The number of Virtual Machines in the Scale Set.
	// +kubebuilder:validation:Optional
	Instances *float64 `json:"instances,omitempty" tf:"instances,omitempty"`

	// Specifies the type of on-premise license (also known as Azure Hybrid Use Benefit) which should be used for this Virtual Machine Scale Set. Possible values are None, Windows_Client and Windows_Server.
	// +kubebuilder:validation:Optional
	LicenseType *string `json:"licenseType,omitempty" tf:"license_type,omitempty"`

	// The Azure location where the Windows Virtual Machine Scale Set should exist. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	Location *string `json:"location,omitempty" tf:"location,omitempty"`

	// The maximum price you're willing to pay for each Virtual Machine in this Scale Set, in US Dollars; which must be greater than the current spot price. If this bid price falls below the current spot price the Virtual Machines in the Scale Set will be evicted using the eviction_policy. Defaults to -1, which means that each Virtual Machine in the Scale Set should not be evicted for price reasons.
	// +kubebuilder:validation:Optional
	MaxBidPrice *float64 `json:"maxBidPrice,omitempty" tf:"max_bid_price,omitempty"`

	// One or more network_interface blocks as defined below.
	// +kubebuilder:validation:Optional
	NetworkInterface []WindowsVirtualMachineScaleSetNetworkInterfaceParameters `json:"networkInterface,omitempty" tf:"network_interface,omitempty"`

	// An os_disk block as defined below.
	// +kubebuilder:validation:Optional
	OsDisk []WindowsVirtualMachineScaleSetOsDiskParameters `json:"osDisk,omitempty" tf:"os_disk,omitempty"`

	// Should Azure over-provision Virtual Machines in this Scale Set? This means that multiple Virtual Machines will be provisioned and Azure will keep the instances which become available first - which improves provisioning success rates and improves deployment time. You're not billed for these over-provisioned VM's and they don't count towards the Subscription Quota. Defaults to true.
	// +kubebuilder:validation:Optional
	Overprovision *bool `json:"overprovision,omitempty" tf:"overprovision,omitempty"`

	// A plan block as defined below. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	Plan []WindowsVirtualMachineScaleSetPlanParameters `json:"plan,omitempty" tf:"plan,omitempty"`

	// Specifies the number of fault domains that are used by this Linux Virtual Machine Scale Set. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	PlatformFaultDomainCount *float64 `json:"platformFaultDomainCount,omitempty" tf:"platform_fault_domain_count,omitempty"`

	// The Priority of this Virtual Machine Scale Set. Possible values are Regular and Spot. Defaults to Regular. Changing this value forces a new resource.
	// +kubebuilder:validation:Optional
	Priority *string `json:"priority,omitempty" tf:"priority,omitempty"`

	// Should the Azure VM Agent be provisioned on each Virtual Machine in the Scale Set? Defaults to true. Changing this value forces a new resource to be created.
	// +kubebuilder:validation:Optional
	ProvisionVMAgent *bool `json:"provisionVmAgent,omitempty" tf:"provision_vm_agent,omitempty"`

	// The ID of the Proximity Placement Group in which the Virtual Machine Scale Set should be assigned to. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	ProximityPlacementGroupID *string `json:"proximityPlacementGroupId,omitempty" tf:"proximity_placement_group_id,omitempty"`

	// The name of the Resource Group in which the Windows Virtual Machine Scale Set should be exist. 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 rolling_upgrade_policy block as defined below. This is Required and can only be specified when upgrade_mode is set to Automatic or Rolling. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	RollingUpgradePolicy []WindowsVirtualMachineScaleSetRollingUpgradePolicyParameters `json:"rollingUpgradePolicy,omitempty" tf:"rolling_upgrade_policy,omitempty"`

	// A scale_in block as defined below.
	// +kubebuilder:validation:Optional
	ScaleIn []WindowsVirtualMachineScaleSetScaleInParameters `json:"scaleIn,omitempty" tf:"scale_in,omitempty"`

	// Deprecated: scaleInPolicy will be removed in favour of the scaleIn code block.
	// +kubebuilder:validation:Optional
	ScaleInPolicy *string `json:"scaleInPolicy,omitempty" tf:"scale_in_policy,omitempty"`

	// One or more secret blocks as defined below.
	// +kubebuilder:validation:Optional
	Secret []WindowsVirtualMachineScaleSetSecretParameters `json:"secret,omitempty" tf:"secret,omitempty"`

	// Specifies if Secure Boot and Trusted Launch is enabled for the Virtual Machine. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	SecureBootEnabled *bool `json:"secureBootEnabled,omitempty" tf:"secure_boot_enabled,omitempty"`

	// Should this Virtual Machine Scale Set be limited to a Single Placement Group, which means the number of instances will be capped at 100 Virtual Machines. Defaults to true.
	// +kubebuilder:validation:Optional
	SinglePlacementGroup *bool `json:"singlePlacementGroup,omitempty" tf:"single_placement_group,omitempty"`

	// The Virtual Machine SKU for the Scale Set, such as Standard_F2.
	// +kubebuilder:validation:Optional
	Sku *string `json:"sku,omitempty" tf:"sku,omitempty"`

	// The ID of an Image which each Virtual Machine in this Scale Set should be based on. Possible Image ID types include Image ID, Shared Image ID, Shared Image Version ID, Community Gallery Image ID, Community Gallery Image Version ID, Shared Gallery Image ID and Shared Gallery Image Version ID.
	// +kubebuilder:validation:Optional
	SourceImageID *string `json:"sourceImageId,omitempty" tf:"source_image_id,omitempty"`

	// A source_image_reference block as defined below.
	// +kubebuilder:validation:Optional
	SourceImageReference []WindowsVirtualMachineScaleSetSourceImageReferenceParameters `json:"sourceImageReference,omitempty" tf:"source_image_reference,omitempty"`

	// A spot_restore block as defined below.
	// +kubebuilder:validation:Optional
	SpotRestore []WindowsVirtualMachineScaleSetSpotRestoreParameters `json:"spotRestore,omitempty" tf:"spot_restore,omitempty"`

	// A mapping of tags which should be assigned to this Virtual Machine Scale Set.
	// +kubebuilder:validation:Optional
	// +mapType=granular
	Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"`

	// A terminate_notification block as defined below.
	// +kubebuilder:validation:Optional
	TerminateNotification []WindowsVirtualMachineScaleSetTerminateNotificationParameters `json:"terminateNotification,omitempty" tf:"terminate_notification,omitempty"`

	// A termination_notification block as defined below.
	// +kubebuilder:validation:Optional
	TerminationNotification []WindowsVirtualMachineScaleSetTerminationNotificationParameters `json:"terminationNotification,omitempty" tf:"termination_notification,omitempty"`

	// Specifies the time zone of the virtual machine, the possible values are defined here.
	// +kubebuilder:validation:Optional
	Timezone *string `json:"timezone,omitempty" tf:"timezone,omitempty"`

	// Specifies how Upgrades (e.g. changing the Image/SKU) should be performed to Virtual Machine Instances. Possible values are Automatic, Manual and Rolling. Defaults to Manual. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	UpgradeMode *string `json:"upgradeMode,omitempty" tf:"upgrade_mode,omitempty"`

	// The Base64-Encoded User Data which should be used for this Virtual Machine Scale Set.
	// +kubebuilder:validation:Optional
	UserData *string `json:"userData,omitempty" tf:"user_data,omitempty"`

	// Specifies if vTPM (Virtual Trusted Platform Module) and Trusted Launch is enabled for the Virtual Machine. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	VtpmEnabled *bool `json:"vtpmEnabled,omitempty" tf:"vtpm_enabled,omitempty"`

	// One or more winrm_listener blocks as defined below. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	WinrmListener []WindowsVirtualMachineScaleSetWinrmListenerParameters `json:"winrmListener,omitempty" tf:"winrm_listener,omitempty"`

	// Should the Virtual Machines in this Scale Set be strictly evenly distributed across Availability Zones? Defaults to false. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	ZoneBalance *bool `json:"zoneBalance,omitempty" tf:"zone_balance,omitempty"`

	// Specifies a list of Availability Zones in which this Windows Virtual Machine Scale Set should be located. Changing this forces a new Windows Virtual Machine Scale Set to be created.
	// +kubebuilder:validation:Optional
	// +listType=set
	Zones []*string `json:"zones,omitempty" tf:"zones,omitempty"`
}

func (*WindowsVirtualMachineScaleSetParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineScaleSetParameters.

func (*WindowsVirtualMachineScaleSetParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type WindowsVirtualMachineScaleSetPlanInitParameters added in v0.35.0

type WindowsVirtualMachineScaleSetPlanInitParameters struct {

	// Specifies the name of the image from the marketplace. Changing this forces a new resource to be created.
	Name *string `json:"name,omitempty" tf:"name,omitempty"`

	// Specifies the product of the image from the marketplace. Changing this forces a new resource to be created.
	Product *string `json:"product,omitempty" tf:"product,omitempty"`

	// Specifies the publisher of the image. Changing this forces a new resource to be created.
	Publisher *string `json:"publisher,omitempty" tf:"publisher,omitempty"`
}

func (*WindowsVirtualMachineScaleSetPlanInitParameters) DeepCopy added in v0.35.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineScaleSetPlanInitParameters.

func (*WindowsVirtualMachineScaleSetPlanInitParameters) DeepCopyInto added in v0.35.0

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type WindowsVirtualMachineScaleSetPlanObservation

type WindowsVirtualMachineScaleSetPlanObservation struct {

	// Specifies the name of the image from the marketplace. Changing this forces a new resource to be created.
	Name *string `json:"name,omitempty" tf:"name,omitempty"`

	// Specifies the product of the image from the marketplace. Changing this forces a new resource to be created.
	Product *string `json:"product,omitempty" tf:"product,omitempty"`

	// Specifies the publisher of the image. Changing this forces a new resource to be created.
	Publisher *string `json:"publisher,omitempty" tf:"publisher,omitempty"`
}

func (*WindowsVirtualMachineScaleSetPlanObservation) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineScaleSetPlanObservation.

func (*WindowsVirtualMachineScaleSetPlanObservation) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type WindowsVirtualMachineScaleSetPlanParameters

type WindowsVirtualMachineScaleSetPlanParameters struct {

	// Specifies the name of the image from the marketplace. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	Name *string `json:"name" tf:"name,omitempty"`

	// Specifies the product of the image from the marketplace. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	Product *string `json:"product" tf:"product,omitempty"`

	// Specifies the publisher of the image. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	Publisher *string `json:"publisher" tf:"publisher,omitempty"`
}

func (*WindowsVirtualMachineScaleSetPlanParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineScaleSetPlanParameters.

func (*WindowsVirtualMachineScaleSetPlanParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type WindowsVirtualMachineScaleSetRollingUpgradePolicyInitParameters added in v0.35.0

type WindowsVirtualMachineScaleSetRollingUpgradePolicyInitParameters struct {

	// Should the Virtual Machine Scale Set ignore the Azure Zone boundaries when constructing upgrade batches? Possible values are true or false.
	CrossZoneUpgradesEnabled *bool `json:"crossZoneUpgradesEnabled,omitempty" tf:"cross_zone_upgrades_enabled,omitempty"`

	// The maximum percent of total virtual machine instances that will be upgraded simultaneously by the rolling upgrade in one batch. As this is a maximum, unhealthy instances in previous or future batches can cause the percentage of instances in a batch to decrease to ensure higher reliability.
	MaxBatchInstancePercent *float64 `json:"maxBatchInstancePercent,omitempty" tf:"max_batch_instance_percent,omitempty"`

	// The maximum percentage of the total virtual machine instances in the scale set that can be simultaneously unhealthy, either as a result of being upgraded, or by being found in an unhealthy state by the virtual machine health checks before the rolling upgrade aborts. This constraint will be checked prior to starting any batch.
	MaxUnhealthyInstancePercent *float64 `json:"maxUnhealthyInstancePercent,omitempty" tf:"max_unhealthy_instance_percent,omitempty"`

	// The maximum percentage of upgraded virtual machine instances that can be found to be in an unhealthy state. This check will happen after each batch is upgraded. If this percentage is ever exceeded, the rolling update aborts.
	MaxUnhealthyUpgradedInstancePercent *float64 `json:"maxUnhealthyUpgradedInstancePercent,omitempty" tf:"max_unhealthy_upgraded_instance_percent,omitempty"`

	// The wait time between completing the update for all virtual machines in one batch and starting the next batch. The time duration should be specified in ISO 8601 format.
	PauseTimeBetweenBatches *string `json:"pauseTimeBetweenBatches,omitempty" tf:"pause_time_between_batches,omitempty"`

	// Upgrade all unhealthy instances in a scale set before any healthy instances. Possible values are true or false.
	PrioritizeUnhealthyInstancesEnabled *bool `json:"prioritizeUnhealthyInstancesEnabled,omitempty" tf:"prioritize_unhealthy_instances_enabled,omitempty"`
}

func (*WindowsVirtualMachineScaleSetRollingUpgradePolicyInitParameters) DeepCopy added in v0.35.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineScaleSetRollingUpgradePolicyInitParameters.

func (*WindowsVirtualMachineScaleSetRollingUpgradePolicyInitParameters) DeepCopyInto added in v0.35.0

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type WindowsVirtualMachineScaleSetRollingUpgradePolicyObservation

type WindowsVirtualMachineScaleSetRollingUpgradePolicyObservation struct {

	// Should the Virtual Machine Scale Set ignore the Azure Zone boundaries when constructing upgrade batches? Possible values are true or false.
	CrossZoneUpgradesEnabled *bool `json:"crossZoneUpgradesEnabled,omitempty" tf:"cross_zone_upgrades_enabled,omitempty"`

	// The maximum percent of total virtual machine instances that will be upgraded simultaneously by the rolling upgrade in one batch. As this is a maximum, unhealthy instances in previous or future batches can cause the percentage of instances in a batch to decrease to ensure higher reliability.
	MaxBatchInstancePercent *float64 `json:"maxBatchInstancePercent,omitempty" tf:"max_batch_instance_percent,omitempty"`

	// The maximum percentage of the total virtual machine instances in the scale set that can be simultaneously unhealthy, either as a result of being upgraded, or by being found in an unhealthy state by the virtual machine health checks before the rolling upgrade aborts. This constraint will be checked prior to starting any batch.
	MaxUnhealthyInstancePercent *float64 `json:"maxUnhealthyInstancePercent,omitempty" tf:"max_unhealthy_instance_percent,omitempty"`

	// The maximum percentage of upgraded virtual machine instances that can be found to be in an unhealthy state. This check will happen after each batch is upgraded. If this percentage is ever exceeded, the rolling update aborts.
	MaxUnhealthyUpgradedInstancePercent *float64 `json:"maxUnhealthyUpgradedInstancePercent,omitempty" tf:"max_unhealthy_upgraded_instance_percent,omitempty"`

	// The wait time between completing the update for all virtual machines in one batch and starting the next batch. The time duration should be specified in ISO 8601 format.
	PauseTimeBetweenBatches *string `json:"pauseTimeBetweenBatches,omitempty" tf:"pause_time_between_batches,omitempty"`

	// Upgrade all unhealthy instances in a scale set before any healthy instances. Possible values are true or false.
	PrioritizeUnhealthyInstancesEnabled *bool `json:"prioritizeUnhealthyInstancesEnabled,omitempty" tf:"prioritize_unhealthy_instances_enabled,omitempty"`
}

func (*WindowsVirtualMachineScaleSetRollingUpgradePolicyObservation) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineScaleSetRollingUpgradePolicyObservation.

func (*WindowsVirtualMachineScaleSetRollingUpgradePolicyObservation) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type WindowsVirtualMachineScaleSetRollingUpgradePolicyParameters

type WindowsVirtualMachineScaleSetRollingUpgradePolicyParameters struct {

	// Should the Virtual Machine Scale Set ignore the Azure Zone boundaries when constructing upgrade batches? Possible values are true or false.
	// +kubebuilder:validation:Optional
	CrossZoneUpgradesEnabled *bool `json:"crossZoneUpgradesEnabled,omitempty" tf:"cross_zone_upgrades_enabled,omitempty"`

	// The maximum percent of total virtual machine instances that will be upgraded simultaneously by the rolling upgrade in one batch. As this is a maximum, unhealthy instances in previous or future batches can cause the percentage of instances in a batch to decrease to ensure higher reliability.
	// +kubebuilder:validation:Optional
	MaxBatchInstancePercent *float64 `json:"maxBatchInstancePercent" tf:"max_batch_instance_percent,omitempty"`

	// The maximum percentage of the total virtual machine instances in the scale set that can be simultaneously unhealthy, either as a result of being upgraded, or by being found in an unhealthy state by the virtual machine health checks before the rolling upgrade aborts. This constraint will be checked prior to starting any batch.
	// +kubebuilder:validation:Optional
	MaxUnhealthyInstancePercent *float64 `json:"maxUnhealthyInstancePercent" tf:"max_unhealthy_instance_percent,omitempty"`

	// The maximum percentage of upgraded virtual machine instances that can be found to be in an unhealthy state. This check will happen after each batch is upgraded. If this percentage is ever exceeded, the rolling update aborts.
	// +kubebuilder:validation:Optional
	MaxUnhealthyUpgradedInstancePercent *float64 `json:"maxUnhealthyUpgradedInstancePercent" tf:"max_unhealthy_upgraded_instance_percent,omitempty"`

	// The wait time between completing the update for all virtual machines in one batch and starting the next batch. The time duration should be specified in ISO 8601 format.
	// +kubebuilder:validation:Optional
	PauseTimeBetweenBatches *string `json:"pauseTimeBetweenBatches" tf:"pause_time_between_batches,omitempty"`

	// Upgrade all unhealthy instances in a scale set before any healthy instances. Possible values are true or false.
	// +kubebuilder:validation:Optional
	PrioritizeUnhealthyInstancesEnabled *bool `json:"prioritizeUnhealthyInstancesEnabled,omitempty" tf:"prioritize_unhealthy_instances_enabled,omitempty"`
}

func (*WindowsVirtualMachineScaleSetRollingUpgradePolicyParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineScaleSetRollingUpgradePolicyParameters.

func (*WindowsVirtualMachineScaleSetRollingUpgradePolicyParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type WindowsVirtualMachineScaleSetScaleInInitParameters added in v0.35.0

type WindowsVirtualMachineScaleSetScaleInInitParameters struct {

	// Should the virtual machines chosen for removal be force deleted when the virtual machine scale set is being scaled-in? Possible values are true or false. Defaults to false.
	ForceDeletionEnabled *bool `json:"forceDeletionEnabled,omitempty" tf:"force_deletion_enabled,omitempty"`

	// The scale-in policy rule that decides which virtual machines are chosen for removal when a Virtual Machine Scale Set is scaled in. Possible values for the scale-in policy rules are Default, NewestVM and OldestVM, defaults to Default. For more information about scale in policy, please refer to this doc.
	Rule *string `json:"rule,omitempty" tf:"rule,omitempty"`
}

func (*WindowsVirtualMachineScaleSetScaleInInitParameters) DeepCopy added in v0.35.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineScaleSetScaleInInitParameters.

func (*WindowsVirtualMachineScaleSetScaleInInitParameters) DeepCopyInto added in v0.35.0

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type WindowsVirtualMachineScaleSetScaleInObservation added in v0.26.0

type WindowsVirtualMachineScaleSetScaleInObservation struct {

	// Should the virtual machines chosen for removal be force deleted when the virtual machine scale set is being scaled-in? Possible values are true or false. Defaults to false.
	ForceDeletionEnabled *bool `json:"forceDeletionEnabled,omitempty" tf:"force_deletion_enabled,omitempty"`

	// The scale-in policy rule that decides which virtual machines are chosen for removal when a Virtual Machine Scale Set is scaled in. Possible values for the scale-in policy rules are Default, NewestVM and OldestVM, defaults to Default. For more information about scale in policy, please refer to this doc.
	Rule *string `json:"rule,omitempty" tf:"rule,omitempty"`
}

func (*WindowsVirtualMachineScaleSetScaleInObservation) DeepCopy added in v0.26.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineScaleSetScaleInObservation.

func (*WindowsVirtualMachineScaleSetScaleInObservation) DeepCopyInto added in v0.26.0

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type WindowsVirtualMachineScaleSetScaleInParameters added in v0.26.0

type WindowsVirtualMachineScaleSetScaleInParameters struct {

	// Should the virtual machines chosen for removal be force deleted when the virtual machine scale set is being scaled-in? Possible values are true or false. Defaults to false.
	// +kubebuilder:validation:Optional
	ForceDeletionEnabled *bool `json:"forceDeletionEnabled,omitempty" tf:"force_deletion_enabled,omitempty"`

	// The scale-in policy rule that decides which virtual machines are chosen for removal when a Virtual Machine Scale Set is scaled in. Possible values for the scale-in policy rules are Default, NewestVM and OldestVM, defaults to Default. For more information about scale in policy, please refer to this doc.
	// +kubebuilder:validation:Optional
	Rule *string `json:"rule,omitempty" tf:"rule,omitempty"`
}

func (*WindowsVirtualMachineScaleSetScaleInParameters) DeepCopy added in v0.26.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineScaleSetScaleInParameters.

func (*WindowsVirtualMachineScaleSetScaleInParameters) DeepCopyInto added in v0.26.0

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type WindowsVirtualMachineScaleSetSecretCertificateInitParameters added in v0.35.0

type WindowsVirtualMachineScaleSetSecretCertificateInitParameters struct {

	// The certificate store on the Virtual Machine where the certificate should be added.
	Store *string `json:"store,omitempty" tf:"store,omitempty"`

	// The Secret URL of a Key Vault Certificate.
	URL *string `json:"url,omitempty" tf:"url,omitempty"`
}

func (*WindowsVirtualMachineScaleSetSecretCertificateInitParameters) DeepCopy added in v0.35.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineScaleSetSecretCertificateInitParameters.

func (*WindowsVirtualMachineScaleSetSecretCertificateInitParameters) DeepCopyInto added in v0.35.0

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type WindowsVirtualMachineScaleSetSecretCertificateObservation

type WindowsVirtualMachineScaleSetSecretCertificateObservation struct {

	// The certificate store on the Virtual Machine where the certificate should be added.
	Store *string `json:"store,omitempty" tf:"store,omitempty"`

	// The Secret URL of a Key Vault Certificate.
	URL *string `json:"url,omitempty" tf:"url,omitempty"`
}

func (*WindowsVirtualMachineScaleSetSecretCertificateObservation) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineScaleSetSecretCertificateObservation.

func (*WindowsVirtualMachineScaleSetSecretCertificateObservation) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type WindowsVirtualMachineScaleSetSecretCertificateParameters

type WindowsVirtualMachineScaleSetSecretCertificateParameters struct {

	// The certificate store on the Virtual Machine where the certificate should be added.
	// +kubebuilder:validation:Optional
	Store *string `json:"store" tf:"store,omitempty"`

	// The Secret URL of a Key Vault Certificate.
	// +kubebuilder:validation:Optional
	URL *string `json:"url" tf:"url,omitempty"`
}

func (*WindowsVirtualMachineScaleSetSecretCertificateParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineScaleSetSecretCertificateParameters.

func (*WindowsVirtualMachineScaleSetSecretCertificateParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type WindowsVirtualMachineScaleSetSecretInitParameters added in v0.35.0

type WindowsVirtualMachineScaleSetSecretInitParameters struct {

	// One or more certificate blocks as defined above.
	Certificate []WindowsVirtualMachineScaleSetSecretCertificateInitParameters `json:"certificate,omitempty" tf:"certificate,omitempty"`

	// The ID of the Key Vault from which all Secrets should be sourced.
	KeyVaultID *string `json:"keyVaultId,omitempty" tf:"key_vault_id,omitempty"`
}

func (*WindowsVirtualMachineScaleSetSecretInitParameters) DeepCopy added in v0.35.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineScaleSetSecretInitParameters.

func (*WindowsVirtualMachineScaleSetSecretInitParameters) DeepCopyInto added in v0.35.0

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type WindowsVirtualMachineScaleSetSecretObservation

type WindowsVirtualMachineScaleSetSecretObservation struct {

	// One or more certificate blocks as defined above.
	Certificate []WindowsVirtualMachineScaleSetSecretCertificateObservation `json:"certificate,omitempty" tf:"certificate,omitempty"`

	// The ID of the Key Vault from which all Secrets should be sourced.
	KeyVaultID *string `json:"keyVaultId,omitempty" tf:"key_vault_id,omitempty"`
}

func (*WindowsVirtualMachineScaleSetSecretObservation) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineScaleSetSecretObservation.

func (*WindowsVirtualMachineScaleSetSecretObservation) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type WindowsVirtualMachineScaleSetSecretParameters

type WindowsVirtualMachineScaleSetSecretParameters struct {

	// One or more certificate blocks as defined above.
	// +kubebuilder:validation:Optional
	Certificate []WindowsVirtualMachineScaleSetSecretCertificateParameters `json:"certificate" tf:"certificate,omitempty"`

	// The ID of the Key Vault from which all Secrets should be sourced.
	// +kubebuilder:validation:Optional
	KeyVaultID *string `json:"keyVaultId" tf:"key_vault_id,omitempty"`
}

func (*WindowsVirtualMachineScaleSetSecretParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineScaleSetSecretParameters.

func (*WindowsVirtualMachineScaleSetSecretParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type WindowsVirtualMachineScaleSetSourceImageReferenceInitParameters added in v0.35.0

type WindowsVirtualMachineScaleSetSourceImageReferenceInitParameters struct {

	// Specifies the offer of the image used to create the virtual machines. Changing this forces a new resource to be created.
	Offer *string `json:"offer,omitempty" tf:"offer,omitempty"`

	// Specifies the publisher of the image used to create the virtual machines. Changing this forces a new resource to be created.
	Publisher *string `json:"publisher,omitempty" tf:"publisher,omitempty"`

	// Specifies the SKU of the image used to create the virtual machines.
	Sku *string `json:"sku,omitempty" tf:"sku,omitempty"`

	// Specifies the version of the image used to create the virtual machines.
	Version *string `json:"version,omitempty" tf:"version,omitempty"`
}

func (*WindowsVirtualMachineScaleSetSourceImageReferenceInitParameters) DeepCopy added in v0.35.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineScaleSetSourceImageReferenceInitParameters.

func (*WindowsVirtualMachineScaleSetSourceImageReferenceInitParameters) DeepCopyInto added in v0.35.0

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type WindowsVirtualMachineScaleSetSourceImageReferenceObservation

type WindowsVirtualMachineScaleSetSourceImageReferenceObservation struct {

	// Specifies the offer of the image used to create the virtual machines. Changing this forces a new resource to be created.
	Offer *string `json:"offer,omitempty" tf:"offer,omitempty"`

	// Specifies the publisher of the image used to create the virtual machines. Changing this forces a new resource to be created.
	Publisher *string `json:"publisher,omitempty" tf:"publisher,omitempty"`

	// Specifies the SKU of the image used to create the virtual machines.
	Sku *string `json:"sku,omitempty" tf:"sku,omitempty"`

	// Specifies the version of the image used to create the virtual machines.
	Version *string `json:"version,omitempty" tf:"version,omitempty"`
}

func (*WindowsVirtualMachineScaleSetSourceImageReferenceObservation) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineScaleSetSourceImageReferenceObservation.

func (*WindowsVirtualMachineScaleSetSourceImageReferenceObservation) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type WindowsVirtualMachineScaleSetSourceImageReferenceParameters

type WindowsVirtualMachineScaleSetSourceImageReferenceParameters struct {

	// Specifies the offer of the image used to create the virtual machines. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	Offer *string `json:"offer" tf:"offer,omitempty"`

	// Specifies the publisher of the image used to create the virtual machines. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	Publisher *string `json:"publisher" tf:"publisher,omitempty"`

	// Specifies the SKU of the image used to create the virtual machines.
	// +kubebuilder:validation:Optional
	Sku *string `json:"sku" tf:"sku,omitempty"`

	// Specifies the version of the image used to create the virtual machines.
	// +kubebuilder:validation:Optional
	Version *string `json:"version" tf:"version,omitempty"`
}

func (*WindowsVirtualMachineScaleSetSourceImageReferenceParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineScaleSetSourceImageReferenceParameters.

func (*WindowsVirtualMachineScaleSetSourceImageReferenceParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type WindowsVirtualMachineScaleSetSpec

type WindowsVirtualMachineScaleSetSpec struct {
	v1.ResourceSpec `json:",inline"`
	ForProvider     WindowsVirtualMachineScaleSetParameters `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 WindowsVirtualMachineScaleSetInitParameters `json:"initProvider,omitempty"`
}

WindowsVirtualMachineScaleSetSpec defines the desired state of WindowsVirtualMachineScaleSet

func (*WindowsVirtualMachineScaleSetSpec) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineScaleSetSpec.

func (*WindowsVirtualMachineScaleSetSpec) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type WindowsVirtualMachineScaleSetSpotRestoreInitParameters added in v0.35.0

type WindowsVirtualMachineScaleSetSpotRestoreInitParameters struct {

	// Should the Spot-Try-Restore feature be enabled? The Spot-Try-Restore feature will attempt to automatically restore the evicted Spot Virtual Machine Scale Set VM instances opportunistically based on capacity availability and pricing constraints. Possible values are true or false. Defaults to false. Changing this forces a new resource to be created.
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// The length of time that the Virtual Machine Scale Set should attempt to restore the Spot VM instances which have been evicted. The time duration should be between 15 minutes and 120 minutes (inclusive). The time duration should be specified in the ISO 8601 format. Defaults to PT1H. Changing this forces a new resource to be created.
	Timeout *string `json:"timeout,omitempty" tf:"timeout,omitempty"`
}

func (*WindowsVirtualMachineScaleSetSpotRestoreInitParameters) DeepCopy added in v0.35.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineScaleSetSpotRestoreInitParameters.

func (*WindowsVirtualMachineScaleSetSpotRestoreInitParameters) DeepCopyInto added in v0.35.0

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type WindowsVirtualMachineScaleSetSpotRestoreObservation added in v0.26.0

type WindowsVirtualMachineScaleSetSpotRestoreObservation struct {

	// Should the Spot-Try-Restore feature be enabled? The Spot-Try-Restore feature will attempt to automatically restore the evicted Spot Virtual Machine Scale Set VM instances opportunistically based on capacity availability and pricing constraints. Possible values are true or false. Defaults to false. Changing this forces a new resource to be created.
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// The length of time that the Virtual Machine Scale Set should attempt to restore the Spot VM instances which have been evicted. The time duration should be between 15 minutes and 120 minutes (inclusive). The time duration should be specified in the ISO 8601 format. Defaults to PT1H. Changing this forces a new resource to be created.
	Timeout *string `json:"timeout,omitempty" tf:"timeout,omitempty"`
}

func (*WindowsVirtualMachineScaleSetSpotRestoreObservation) DeepCopy added in v0.26.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineScaleSetSpotRestoreObservation.

func (*WindowsVirtualMachineScaleSetSpotRestoreObservation) DeepCopyInto added in v0.26.0

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type WindowsVirtualMachineScaleSetSpotRestoreParameters added in v0.26.0

type WindowsVirtualMachineScaleSetSpotRestoreParameters struct {

	// Should the Spot-Try-Restore feature be enabled? The Spot-Try-Restore feature will attempt to automatically restore the evicted Spot Virtual Machine Scale Set VM instances opportunistically based on capacity availability and pricing constraints. Possible values are true or false. Defaults to false. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// The length of time that the Virtual Machine Scale Set should attempt to restore the Spot VM instances which have been evicted. The time duration should be between 15 minutes and 120 minutes (inclusive). The time duration should be specified in the ISO 8601 format. Defaults to PT1H. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	Timeout *string `json:"timeout,omitempty" tf:"timeout,omitempty"`
}

func (*WindowsVirtualMachineScaleSetSpotRestoreParameters) DeepCopy added in v0.26.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineScaleSetSpotRestoreParameters.

func (*WindowsVirtualMachineScaleSetSpotRestoreParameters) DeepCopyInto added in v0.26.0

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type WindowsVirtualMachineScaleSetStatus

type WindowsVirtualMachineScaleSetStatus struct {
	v1.ResourceStatus `json:",inline"`
	AtProvider        WindowsVirtualMachineScaleSetObservation `json:"atProvider,omitempty"`
}

WindowsVirtualMachineScaleSetStatus defines the observed state of WindowsVirtualMachineScaleSet.

func (*WindowsVirtualMachineScaleSetStatus) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineScaleSetStatus.

func (*WindowsVirtualMachineScaleSetStatus) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type WindowsVirtualMachineScaleSetTerminateNotificationInitParameters added in v0.35.0

type WindowsVirtualMachineScaleSetTerminateNotificationInitParameters struct {

	// Should the terminate notification be enabled on this Virtual Machine Scale Set?
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// Length of time (in minutes, between 5 and 15) a notification to be sent to the VM on the instance metadata server till the VM gets deleted. The time duration should be specified in ISO 8601 format. Defaults to PT5M.
	Timeout *string `json:"timeout,omitempty" tf:"timeout,omitempty"`
}

func (*WindowsVirtualMachineScaleSetTerminateNotificationInitParameters) DeepCopy added in v0.35.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineScaleSetTerminateNotificationInitParameters.

func (*WindowsVirtualMachineScaleSetTerminateNotificationInitParameters) DeepCopyInto added in v0.35.0

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type WindowsVirtualMachineScaleSetTerminateNotificationObservation

type WindowsVirtualMachineScaleSetTerminateNotificationObservation struct {

	// Should the terminate notification be enabled on this Virtual Machine Scale Set?
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// Length of time (in minutes, between 5 and 15) a notification to be sent to the VM on the instance metadata server till the VM gets deleted. The time duration should be specified in ISO 8601 format. Defaults to PT5M.
	Timeout *string `json:"timeout,omitempty" tf:"timeout,omitempty"`
}

func (*WindowsVirtualMachineScaleSetTerminateNotificationObservation) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineScaleSetTerminateNotificationObservation.

func (*WindowsVirtualMachineScaleSetTerminateNotificationObservation) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type WindowsVirtualMachineScaleSetTerminateNotificationParameters

type WindowsVirtualMachineScaleSetTerminateNotificationParameters struct {

	// Should the terminate notification be enabled on this Virtual Machine Scale Set?
	// +kubebuilder:validation:Optional
	Enabled *bool `json:"enabled" tf:"enabled,omitempty"`

	// Length of time (in minutes, between 5 and 15) a notification to be sent to the VM on the instance metadata server till the VM gets deleted. The time duration should be specified in ISO 8601 format. Defaults to PT5M.
	// +kubebuilder:validation:Optional
	Timeout *string `json:"timeout,omitempty" tf:"timeout,omitempty"`
}

func (*WindowsVirtualMachineScaleSetTerminateNotificationParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineScaleSetTerminateNotificationParameters.

func (*WindowsVirtualMachineScaleSetTerminateNotificationParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type WindowsVirtualMachineScaleSetTerminationNotificationInitParameters added in v0.35.0

type WindowsVirtualMachineScaleSetTerminationNotificationInitParameters struct {

	// Should the termination notification be enabled on this Virtual Machine Scale Set?
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// Length of time (in minutes, between 5 and 15) a notification to be sent to the VM on the instance metadata server till the VM gets deleted. The time duration should be specified in ISO 8601 format. Defaults to PT5M.
	Timeout *string `json:"timeout,omitempty" tf:"timeout,omitempty"`
}

func (*WindowsVirtualMachineScaleSetTerminationNotificationInitParameters) DeepCopy added in v0.35.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineScaleSetTerminationNotificationInitParameters.

func (*WindowsVirtualMachineScaleSetTerminationNotificationInitParameters) DeepCopyInto added in v0.35.0

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type WindowsVirtualMachineScaleSetTerminationNotificationObservation

type WindowsVirtualMachineScaleSetTerminationNotificationObservation struct {

	// Should the termination notification be enabled on this Virtual Machine Scale Set?
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// Length of time (in minutes, between 5 and 15) a notification to be sent to the VM on the instance metadata server till the VM gets deleted. The time duration should be specified in ISO 8601 format. Defaults to PT5M.
	Timeout *string `json:"timeout,omitempty" tf:"timeout,omitempty"`
}

func (*WindowsVirtualMachineScaleSetTerminationNotificationObservation) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineScaleSetTerminationNotificationObservation.

func (*WindowsVirtualMachineScaleSetTerminationNotificationObservation) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type WindowsVirtualMachineScaleSetTerminationNotificationParameters

type WindowsVirtualMachineScaleSetTerminationNotificationParameters struct {

	// Should the termination notification be enabled on this Virtual Machine Scale Set?
	// +kubebuilder:validation:Optional
	Enabled *bool `json:"enabled" tf:"enabled,omitempty"`

	// Length of time (in minutes, between 5 and 15) a notification to be sent to the VM on the instance metadata server till the VM gets deleted. The time duration should be specified in ISO 8601 format. Defaults to PT5M.
	// +kubebuilder:validation:Optional
	Timeout *string `json:"timeout,omitempty" tf:"timeout,omitempty"`
}

func (*WindowsVirtualMachineScaleSetTerminationNotificationParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineScaleSetTerminationNotificationParameters.

func (*WindowsVirtualMachineScaleSetTerminationNotificationParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type WindowsVirtualMachineScaleSetWinrmListenerInitParameters added in v0.35.0

type WindowsVirtualMachineScaleSetWinrmListenerInitParameters struct {

	// The Secret URL of a Key Vault Certificate, which must be specified when protocol is set to Https. Changing this forces a new resource to be created.
	CertificateURL *string `json:"certificateUrl,omitempty" tf:"certificate_url,omitempty"`

	// The Protocol of the WinRM Listener. Possible values are Http and Https. Changing this forces a new resource to be created.
	Protocol *string `json:"protocol,omitempty" tf:"protocol,omitempty"`
}

func (*WindowsVirtualMachineScaleSetWinrmListenerInitParameters) DeepCopy added in v0.35.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineScaleSetWinrmListenerInitParameters.

func (*WindowsVirtualMachineScaleSetWinrmListenerInitParameters) DeepCopyInto added in v0.35.0

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type WindowsVirtualMachineScaleSetWinrmListenerObservation

type WindowsVirtualMachineScaleSetWinrmListenerObservation struct {

	// The Secret URL of a Key Vault Certificate, which must be specified when protocol is set to Https. Changing this forces a new resource to be created.
	CertificateURL *string `json:"certificateUrl,omitempty" tf:"certificate_url,omitempty"`

	// The Protocol of the WinRM Listener. Possible values are Http and Https. Changing this forces a new resource to be created.
	Protocol *string `json:"protocol,omitempty" tf:"protocol,omitempty"`
}

func (*WindowsVirtualMachineScaleSetWinrmListenerObservation) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineScaleSetWinrmListenerObservation.

func (*WindowsVirtualMachineScaleSetWinrmListenerObservation) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type WindowsVirtualMachineScaleSetWinrmListenerParameters

type WindowsVirtualMachineScaleSetWinrmListenerParameters struct {

	// The Secret URL of a Key Vault Certificate, which must be specified when protocol is set to Https. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	CertificateURL *string `json:"certificateUrl,omitempty" tf:"certificate_url,omitempty"`

	// The Protocol of the WinRM Listener. Possible values are Http and Https. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	Protocol *string `json:"protocol" tf:"protocol,omitempty"`
}

func (*WindowsVirtualMachineScaleSetWinrmListenerParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineScaleSetWinrmListenerParameters.

func (*WindowsVirtualMachineScaleSetWinrmListenerParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type WindowsVirtualMachineSecretCertificateInitParameters added in v0.35.0

type WindowsVirtualMachineSecretCertificateInitParameters struct {

	// The certificate store on the Virtual Machine where the certificate should be added.
	Store *string `json:"store,omitempty" tf:"store,omitempty"`

	// The Secret URL of a Key Vault Certificate.
	URL *string `json:"url,omitempty" tf:"url,omitempty"`
}

func (*WindowsVirtualMachineSecretCertificateInitParameters) DeepCopy added in v0.35.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineSecretCertificateInitParameters.

func (*WindowsVirtualMachineSecretCertificateInitParameters) DeepCopyInto added in v0.35.0

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type WindowsVirtualMachineSecretCertificateObservation

type WindowsVirtualMachineSecretCertificateObservation struct {

	// The certificate store on the Virtual Machine where the certificate should be added.
	Store *string `json:"store,omitempty" tf:"store,omitempty"`

	// The Secret URL of a Key Vault Certificate.
	URL *string `json:"url,omitempty" tf:"url,omitempty"`
}

func (*WindowsVirtualMachineSecretCertificateObservation) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineSecretCertificateObservation.

func (*WindowsVirtualMachineSecretCertificateObservation) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type WindowsVirtualMachineSecretCertificateParameters

type WindowsVirtualMachineSecretCertificateParameters struct {

	// The certificate store on the Virtual Machine where the certificate should be added.
	// +kubebuilder:validation:Optional
	Store *string `json:"store" tf:"store,omitempty"`

	// The Secret URL of a Key Vault Certificate.
	// +kubebuilder:validation:Optional
	URL *string `json:"url" tf:"url,omitempty"`
}

func (*WindowsVirtualMachineSecretCertificateParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineSecretCertificateParameters.

func (*WindowsVirtualMachineSecretCertificateParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type WindowsVirtualMachineSecretInitParameters added in v0.35.0

type WindowsVirtualMachineSecretInitParameters struct {

	// One or more certificate blocks as defined above.
	Certificate []WindowsVirtualMachineSecretCertificateInitParameters `json:"certificate,omitempty" tf:"certificate,omitempty"`

	// The ID of the Key Vault from which all Secrets should be sourced.
	KeyVaultID *string `json:"keyVaultId,omitempty" tf:"key_vault_id,omitempty"`
}

func (*WindowsVirtualMachineSecretInitParameters) DeepCopy added in v0.35.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineSecretInitParameters.

func (*WindowsVirtualMachineSecretInitParameters) DeepCopyInto added in v0.35.0

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type WindowsVirtualMachineSecretObservation

type WindowsVirtualMachineSecretObservation struct {

	// One or more certificate blocks as defined above.
	Certificate []WindowsVirtualMachineSecretCertificateObservation `json:"certificate,omitempty" tf:"certificate,omitempty"`

	// The ID of the Key Vault from which all Secrets should be sourced.
	KeyVaultID *string `json:"keyVaultId,omitempty" tf:"key_vault_id,omitempty"`
}

func (*WindowsVirtualMachineSecretObservation) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineSecretObservation.

func (*WindowsVirtualMachineSecretObservation) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type WindowsVirtualMachineSecretParameters

type WindowsVirtualMachineSecretParameters struct {

	// One or more certificate blocks as defined above.
	// +kubebuilder:validation:Optional
	Certificate []WindowsVirtualMachineSecretCertificateParameters `json:"certificate" tf:"certificate,omitempty"`

	// The ID of the Key Vault from which all Secrets should be sourced.
	// +kubebuilder:validation:Optional
	KeyVaultID *string `json:"keyVaultId" tf:"key_vault_id,omitempty"`
}

func (*WindowsVirtualMachineSecretParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineSecretParameters.

func (*WindowsVirtualMachineSecretParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type WindowsVirtualMachineSourceImageReferenceInitParameters added in v0.35.0

type WindowsVirtualMachineSourceImageReferenceInitParameters struct {

	// Specifies the offer of the image used to create the virtual machines. Changing this forces a new resource to be created.
	Offer *string `json:"offer,omitempty" tf:"offer,omitempty"`

	// Specifies the publisher of the image used to create the virtual machines. Changing this forces a new resource to be created.
	Publisher *string `json:"publisher,omitempty" tf:"publisher,omitempty"`

	// Specifies the SKU of the image used to create the virtual machines. Changing this forces a new resource to be created.
	Sku *string `json:"sku,omitempty" tf:"sku,omitempty"`

	// Specifies the version of the image used to create the virtual machines. Changing this forces a new resource to be created.
	Version *string `json:"version,omitempty" tf:"version,omitempty"`
}

func (*WindowsVirtualMachineSourceImageReferenceInitParameters) DeepCopy added in v0.35.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineSourceImageReferenceInitParameters.

func (*WindowsVirtualMachineSourceImageReferenceInitParameters) DeepCopyInto added in v0.35.0

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type WindowsVirtualMachineSourceImageReferenceObservation

type WindowsVirtualMachineSourceImageReferenceObservation struct {

	// Specifies the offer of the image used to create the virtual machines. Changing this forces a new resource to be created.
	Offer *string `json:"offer,omitempty" tf:"offer,omitempty"`

	// Specifies the publisher of the image used to create the virtual machines. Changing this forces a new resource to be created.
	Publisher *string `json:"publisher,omitempty" tf:"publisher,omitempty"`

	// Specifies the SKU of the image used to create the virtual machines. Changing this forces a new resource to be created.
	Sku *string `json:"sku,omitempty" tf:"sku,omitempty"`

	// Specifies the version of the image used to create the virtual machines. Changing this forces a new resource to be created.
	Version *string `json:"version,omitempty" tf:"version,omitempty"`
}

func (*WindowsVirtualMachineSourceImageReferenceObservation) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineSourceImageReferenceObservation.

func (*WindowsVirtualMachineSourceImageReferenceObservation) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type WindowsVirtualMachineSourceImageReferenceParameters

type WindowsVirtualMachineSourceImageReferenceParameters struct {

	// Specifies the offer of the image used to create the virtual machines. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	Offer *string `json:"offer" tf:"offer,omitempty"`

	// Specifies the publisher of the image used to create the virtual machines. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	Publisher *string `json:"publisher" tf:"publisher,omitempty"`

	// Specifies the SKU of the image used to create the virtual machines. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	Sku *string `json:"sku" tf:"sku,omitempty"`

	// Specifies the version of the image used to create the virtual machines. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	Version *string `json:"version" tf:"version,omitempty"`
}

func (*WindowsVirtualMachineSourceImageReferenceParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineSourceImageReferenceParameters.

func (*WindowsVirtualMachineSourceImageReferenceParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type WindowsVirtualMachineSpec

type WindowsVirtualMachineSpec struct {
	v1.ResourceSpec `json:",inline"`
	ForProvider     WindowsVirtualMachineParameters `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 WindowsVirtualMachineInitParameters `json:"initProvider,omitempty"`
}

WindowsVirtualMachineSpec defines the desired state of WindowsVirtualMachine

func (*WindowsVirtualMachineSpec) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineSpec.

func (*WindowsVirtualMachineSpec) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type WindowsVirtualMachineStatus

type WindowsVirtualMachineStatus struct {
	v1.ResourceStatus `json:",inline"`
	AtProvider        WindowsVirtualMachineObservation `json:"atProvider,omitempty"`
}

WindowsVirtualMachineStatus defines the observed state of WindowsVirtualMachine.

func (*WindowsVirtualMachineStatus) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineStatus.

func (*WindowsVirtualMachineStatus) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type WindowsVirtualMachineTerminationNotificationInitParameters added in v0.35.0

type WindowsVirtualMachineTerminationNotificationInitParameters struct {

	// Should the termination notification be enabled on this Virtual Machine?
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// Length of time (in minutes, between 5 and 15) a notification to be sent to the VM on the instance metadata server till the VM gets deleted. The time duration should be specified in ISO 8601 format. Defaults to PT5M.
	Timeout *string `json:"timeout,omitempty" tf:"timeout,omitempty"`
}

func (*WindowsVirtualMachineTerminationNotificationInitParameters) DeepCopy added in v0.35.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineTerminationNotificationInitParameters.

func (*WindowsVirtualMachineTerminationNotificationInitParameters) DeepCopyInto added in v0.35.0

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type WindowsVirtualMachineTerminationNotificationObservation

type WindowsVirtualMachineTerminationNotificationObservation struct {

	// Should the termination notification be enabled on this Virtual Machine?
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// Length of time (in minutes, between 5 and 15) a notification to be sent to the VM on the instance metadata server till the VM gets deleted. The time duration should be specified in ISO 8601 format. Defaults to PT5M.
	Timeout *string `json:"timeout,omitempty" tf:"timeout,omitempty"`
}

func (*WindowsVirtualMachineTerminationNotificationObservation) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineTerminationNotificationObservation.

func (*WindowsVirtualMachineTerminationNotificationObservation) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type WindowsVirtualMachineTerminationNotificationParameters

type WindowsVirtualMachineTerminationNotificationParameters struct {

	// Should the termination notification be enabled on this Virtual Machine?
	// +kubebuilder:validation:Optional
	Enabled *bool `json:"enabled" tf:"enabled,omitempty"`

	// Length of time (in minutes, between 5 and 15) a notification to be sent to the VM on the instance metadata server till the VM gets deleted. The time duration should be specified in ISO 8601 format. Defaults to PT5M.
	// +kubebuilder:validation:Optional
	Timeout *string `json:"timeout,omitempty" tf:"timeout,omitempty"`
}

func (*WindowsVirtualMachineTerminationNotificationParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineTerminationNotificationParameters.

func (*WindowsVirtualMachineTerminationNotificationParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type WindowsVirtualMachineWinrmListenerInitParameters added in v0.35.0

type WindowsVirtualMachineWinrmListenerInitParameters struct {

	// The Secret URL of a Key Vault Certificate, which must be specified when protocol is set to Https. Changing this forces a new resource to be created.
	CertificateURL *string `json:"certificateUrl,omitempty" tf:"certificate_url,omitempty"`

	// Specifies the protocol of listener. Possible values are Http or Https. Changing this forces a new resource to be created.
	Protocol *string `json:"protocol,omitempty" tf:"protocol,omitempty"`
}

func (*WindowsVirtualMachineWinrmListenerInitParameters) DeepCopy added in v0.35.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineWinrmListenerInitParameters.

func (*WindowsVirtualMachineWinrmListenerInitParameters) DeepCopyInto added in v0.35.0

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type WindowsVirtualMachineWinrmListenerObservation

type WindowsVirtualMachineWinrmListenerObservation struct {

	// The Secret URL of a Key Vault Certificate, which must be specified when protocol is set to Https. Changing this forces a new resource to be created.
	CertificateURL *string `json:"certificateUrl,omitempty" tf:"certificate_url,omitempty"`

	// Specifies the protocol of listener. Possible values are Http or Https. Changing this forces a new resource to be created.
	Protocol *string `json:"protocol,omitempty" tf:"protocol,omitempty"`
}

func (*WindowsVirtualMachineWinrmListenerObservation) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineWinrmListenerObservation.

func (*WindowsVirtualMachineWinrmListenerObservation) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type WindowsVirtualMachineWinrmListenerParameters

type WindowsVirtualMachineWinrmListenerParameters struct {

	// The Secret URL of a Key Vault Certificate, which must be specified when protocol is set to Https. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	CertificateURL *string `json:"certificateUrl,omitempty" tf:"certificate_url,omitempty"`

	// Specifies the protocol of listener. Possible values are Http or Https. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	Protocol *string `json:"protocol" tf:"protocol,omitempty"`
}

func (*WindowsVirtualMachineWinrmListenerParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WindowsVirtualMachineWinrmListenerParameters.

func (*WindowsVirtualMachineWinrmListenerParameters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type WinrmListenerInitParameters added in v0.35.0

type WinrmListenerInitParameters struct {

	// The Secret URL of a Key Vault Certificate, which must be specified when protocol is set to Https. Changing this forces a new resource to be created.
	CertificateURL *string `json:"certificateUrl,omitempty" tf:"certificate_url,omitempty"`

	// Specifies the protocol of listener. Possible values are Http or Https. Changing this forces a new resource to be created.
	Protocol *string `json:"protocol,omitempty" tf:"protocol,omitempty"`
}

func (*WinrmListenerInitParameters) DeepCopy added in v0.35.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WinrmListenerInitParameters.

func (*WinrmListenerInitParameters) DeepCopyInto added in v0.35.0

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type WinrmListenerObservation

type WinrmListenerObservation struct {

	// The Secret URL of a Key Vault Certificate, which must be specified when protocol is set to Https. Changing this forces a new resource to be created.
	CertificateURL *string `json:"certificateUrl,omitempty" tf:"certificate_url,omitempty"`

	// Specifies the protocol of listener. Possible values are Http or Https. Changing this forces a new resource to be created.
	Protocol *string `json:"protocol,omitempty" tf:"protocol,omitempty"`
}

func (*WinrmListenerObservation) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WinrmListenerObservation.

func (*WinrmListenerObservation) DeepCopyInto

func (in *WinrmListenerObservation) DeepCopyInto(out *WinrmListenerObservation)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type WinrmListenerParameters

type WinrmListenerParameters struct {

	// The Secret URL of a Key Vault Certificate, which must be specified when protocol is set to Https. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	CertificateURL *string `json:"certificateUrl,omitempty" tf:"certificate_url,omitempty"`

	// Specifies the protocol of listener. Possible values are Http or Https. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	Protocol *string `json:"protocol" tf:"protocol,omitempty"`
}

func (*WinrmListenerParameters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WinrmListenerParameters.

func (*WinrmListenerParameters) DeepCopyInto

func (in *WinrmListenerParameters) DeepCopyInto(out *WinrmListenerParameters)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

Source Files

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL