v1beta1

package
v1.5.1 Latest Latest
Warning

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

Go to latest
Published: Sep 16, 2024 License: Apache-2.0 Imports: 16 Imported by: 0

Documentation

Overview

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

Index

Constants

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

Package type metadata.

Variables

View Source
var (
	GlobalVMShutdownSchedule_Kind             = "GlobalVMShutdownSchedule"
	GlobalVMShutdownSchedule_GroupKind        = schema.GroupKind{Group: CRDGroup, Kind: GlobalVMShutdownSchedule_Kind}.String()
	GlobalVMShutdownSchedule_KindAPIVersion   = GlobalVMShutdownSchedule_Kind + "." + CRDGroupVersion.String()
	GlobalVMShutdownSchedule_GroupVersionKind = CRDGroupVersion.WithKind(GlobalVMShutdownSchedule_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 (
	Lab_Kind             = "Lab"
	Lab_GroupKind        = schema.GroupKind{Group: CRDGroup, Kind: Lab_Kind}.String()
	Lab_KindAPIVersion   = Lab_Kind + "." + CRDGroupVersion.String()
	Lab_GroupVersionKind = CRDGroupVersion.WithKind(Lab_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 (
	Policy_Kind             = "Policy"
	Policy_GroupKind        = schema.GroupKind{Group: CRDGroup, Kind: Policy_Kind}.String()
	Policy_KindAPIVersion   = Policy_Kind + "." + CRDGroupVersion.String()
	Policy_GroupVersionKind = CRDGroupVersion.WithKind(Policy_Kind)
)

Repository type metadata.

View Source
var (
	Schedule_Kind             = "Schedule"
	Schedule_GroupKind        = schema.GroupKind{Group: CRDGroup, Kind: Schedule_Kind}.String()
	Schedule_KindAPIVersion   = Schedule_Kind + "." + CRDGroupVersion.String()
	Schedule_GroupVersionKind = CRDGroupVersion.WithKind(Schedule_Kind)
)

Repository type metadata.

View Source
var (
	VirtualNetwork_Kind             = "VirtualNetwork"
	VirtualNetwork_GroupKind        = schema.GroupKind{Group: CRDGroup, Kind: VirtualNetwork_Kind}.String()
	VirtualNetwork_KindAPIVersion   = VirtualNetwork_Kind + "." + CRDGroupVersion.String()
	VirtualNetwork_GroupVersionKind = CRDGroupVersion.WithKind(VirtualNetwork_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.

Functions

This section is empty.

Types

type DailyRecurrenceInitParameters added in v0.35.0

type DailyRecurrenceInitParameters struct {

	// The time each day when the schedule takes effect.
	Time *string `json:"time,omitempty" tf:"time,omitempty"`
}

func (*DailyRecurrenceInitParameters) DeepCopy added in v0.35.0

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

func (*DailyRecurrenceInitParameters) DeepCopyInto added in v0.35.0

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

type DailyRecurrenceObservation

type DailyRecurrenceObservation struct {

	// The time each day when the schedule takes effect.
	Time *string `json:"time,omitempty" tf:"time,omitempty"`
}

func (*DailyRecurrenceObservation) DeepCopy

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

func (*DailyRecurrenceObservation) DeepCopyInto

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

type DailyRecurrenceParameters

type DailyRecurrenceParameters struct {

	// The time each day when the schedule takes effect.
	// +kubebuilder:validation:Optional
	Time *string `json:"time" tf:"time,omitempty"`
}

func (*DailyRecurrenceParameters) DeepCopy

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

func (*DailyRecurrenceParameters) DeepCopyInto

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

type GalleryImageReferenceInitParameters added in v0.35.0

type GalleryImageReferenceInitParameters struct {

	// The Offer of the Gallery Image. Changing this forces a new resource to be created.
	Offer *string `json:"offer,omitempty" tf:"offer,omitempty"`

	// The Publisher of the Gallery Image. Changing this forces a new resource to be created.
	Publisher *string `json:"publisher,omitempty" tf:"publisher,omitempty"`

	// The SKU of the Gallery Image. Changing this forces a new resource to be created.
	Sku *string `json:"sku,omitempty" tf:"sku,omitempty"`

	// The Version of the Gallery Image. Changing this forces a new resource to be created.
	Version *string `json:"version,omitempty" tf:"version,omitempty"`
}

func (*GalleryImageReferenceInitParameters) DeepCopy added in v0.35.0

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

func (*GalleryImageReferenceInitParameters) DeepCopyInto added in v0.35.0

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

type GalleryImageReferenceObservation

type GalleryImageReferenceObservation struct {

	// The Offer of the Gallery Image. Changing this forces a new resource to be created.
	Offer *string `json:"offer,omitempty" tf:"offer,omitempty"`

	// The Publisher of the Gallery Image. Changing this forces a new resource to be created.
	Publisher *string `json:"publisher,omitempty" tf:"publisher,omitempty"`

	// The SKU of the Gallery Image. Changing this forces a new resource to be created.
	Sku *string `json:"sku,omitempty" tf:"sku,omitempty"`

	// The Version of the Gallery Image. Changing this forces a new resource to be created.
	Version *string `json:"version,omitempty" tf:"version,omitempty"`
}

func (*GalleryImageReferenceObservation) DeepCopy

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

func (*GalleryImageReferenceObservation) DeepCopyInto

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

type GalleryImageReferenceParameters

type GalleryImageReferenceParameters struct {

	// The Offer of the Gallery Image. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	Offer *string `json:"offer" tf:"offer,omitempty"`

	// The Publisher of the Gallery Image. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	Publisher *string `json:"publisher" tf:"publisher,omitempty"`

	// The SKU of the Gallery Image. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	Sku *string `json:"sku" tf:"sku,omitempty"`

	// The Version of the Gallery Image. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	Version *string `json:"version" tf:"version,omitempty"`
}

func (*GalleryImageReferenceParameters) DeepCopy

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

func (*GalleryImageReferenceParameters) DeepCopyInto

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

type GlobalVMShutdownSchedule

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

GlobalVMShutdownSchedule is the Schema for the GlobalVMShutdownSchedules API. Manages automated shutdown schedules for Azure Resource Manager VMs outside of Dev Test Labs. +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 (*GlobalVMShutdownSchedule) ConvertFrom added in v1.2.0

func (tr *GlobalVMShutdownSchedule) ConvertFrom(srcRaw conversion.Hub) error

ConvertFrom converts from the hub type to the GlobalVMShutdownSchedule type.

func (*GlobalVMShutdownSchedule) ConvertTo added in v1.2.0

func (tr *GlobalVMShutdownSchedule) ConvertTo(dstRaw conversion.Hub) error

ConvertTo converts this GlobalVMShutdownSchedule to the hub type.

func (*GlobalVMShutdownSchedule) DeepCopy

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

func (*GlobalVMShutdownSchedule) DeepCopyInto

func (in *GlobalVMShutdownSchedule) DeepCopyInto(out *GlobalVMShutdownSchedule)

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

func (*GlobalVMShutdownSchedule) DeepCopyObject

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

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

func (*GlobalVMShutdownSchedule) GetCondition

GetCondition of this GlobalVMShutdownSchedule.

func (*GlobalVMShutdownSchedule) GetConnectionDetailsMapping

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

GetConnectionDetailsMapping for this GlobalVMShutdownSchedule

func (*GlobalVMShutdownSchedule) GetDeletionPolicy

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

GetDeletionPolicy of this GlobalVMShutdownSchedule.

func (*GlobalVMShutdownSchedule) GetID

func (tr *GlobalVMShutdownSchedule) GetID() string

GetID returns ID of underlying Terraform resource of this GlobalVMShutdownSchedule

func (*GlobalVMShutdownSchedule) GetInitParameters added in v0.35.0

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

GetInitParameters of this GlobalVMShutdownSchedule

func (*GlobalVMShutdownSchedule) GetManagementPolicies added in v0.35.0

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

GetManagementPolicies of this GlobalVMShutdownSchedule.

func (*GlobalVMShutdownSchedule) GetMergedParameters added in v0.40.0

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

GetInitParameters of this GlobalVMShutdownSchedule

func (*GlobalVMShutdownSchedule) GetObservation

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

GetObservation of this GlobalVMShutdownSchedule

func (*GlobalVMShutdownSchedule) GetParameters

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

GetParameters of this GlobalVMShutdownSchedule

func (*GlobalVMShutdownSchedule) GetProviderConfigReference

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

GetProviderConfigReference of this GlobalVMShutdownSchedule.

func (*GlobalVMShutdownSchedule) GetPublishConnectionDetailsTo

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

GetPublishConnectionDetailsTo of this GlobalVMShutdownSchedule.

func (*GlobalVMShutdownSchedule) GetTerraformResourceType

func (mg *GlobalVMShutdownSchedule) GetTerraformResourceType() string

GetTerraformResourceType returns Terraform resource type for this GlobalVMShutdownSchedule

func (*GlobalVMShutdownSchedule) GetTerraformSchemaVersion

func (tr *GlobalVMShutdownSchedule) GetTerraformSchemaVersion() int

GetTerraformSchemaVersion returns the associated Terraform schema version

func (*GlobalVMShutdownSchedule) GetWriteConnectionSecretToReference

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

GetWriteConnectionSecretToReference of this GlobalVMShutdownSchedule.

func (*GlobalVMShutdownSchedule) LateInitialize

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

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

func (*GlobalVMShutdownSchedule) ResolveReferences

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

func (*GlobalVMShutdownSchedule) SetConditions

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

SetConditions of this GlobalVMShutdownSchedule.

func (*GlobalVMShutdownSchedule) SetDeletionPolicy

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

SetDeletionPolicy of this GlobalVMShutdownSchedule.

func (*GlobalVMShutdownSchedule) SetManagementPolicies added in v0.35.0

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

SetManagementPolicies of this GlobalVMShutdownSchedule.

func (*GlobalVMShutdownSchedule) SetObservation

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

SetObservation for this GlobalVMShutdownSchedule

func (*GlobalVMShutdownSchedule) SetParameters

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

SetParameters for this GlobalVMShutdownSchedule

func (*GlobalVMShutdownSchedule) SetProviderConfigReference

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

SetProviderConfigReference of this GlobalVMShutdownSchedule.

func (*GlobalVMShutdownSchedule) SetPublishConnectionDetailsTo

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

SetPublishConnectionDetailsTo of this GlobalVMShutdownSchedule.

func (*GlobalVMShutdownSchedule) SetWriteConnectionSecretToReference

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

SetWriteConnectionSecretToReference of this GlobalVMShutdownSchedule.

type GlobalVMShutdownScheduleInitParameters added in v0.35.0

type GlobalVMShutdownScheduleInitParameters struct {

	// The time each day when the schedule takes effect. Must match the format HHmm where HH is 00-23 and mm is 00-59 (e.g. 0930, 2300, etc.)
	DailyRecurrenceTime *string `json:"dailyRecurrenceTime,omitempty" tf:"daily_recurrence_time,omitempty"`

	// Whether to enable the schedule. Possible values are true and false. Defaults to true.
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// The location where the schedule is created. Changing this forces a new resource to be created.
	Location *string `json:"location,omitempty" tf:"location,omitempty"`

	// The notification setting of a schedule. A notification_settings block as defined below.
	NotificationSettings []NotificationSettingsInitParameters `json:"notificationSettings,omitempty" tf:"notification_settings,omitempty"`

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

	// The time zone ID (e.g. Pacific Standard time). Refer to this guide for a full list of accepted time zone names.
	Timezone *string `json:"timezone,omitempty" tf:"timezone,omitempty"`

	// The resource ID of the target ARM-based 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()
	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 (*GlobalVMShutdownScheduleInitParameters) DeepCopy added in v0.35.0

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

func (*GlobalVMShutdownScheduleInitParameters) DeepCopyInto added in v0.35.0

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

type GlobalVMShutdownScheduleList

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

GlobalVMShutdownScheduleList contains a list of GlobalVMShutdownSchedules

func (*GlobalVMShutdownScheduleList) DeepCopy

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

func (*GlobalVMShutdownScheduleList) DeepCopyInto

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

func (*GlobalVMShutdownScheduleList) DeepCopyObject

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

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

func (*GlobalVMShutdownScheduleList) GetItems

GetItems of this GlobalVMShutdownScheduleList.

type GlobalVMShutdownScheduleObservation

type GlobalVMShutdownScheduleObservation struct {

	// The time each day when the schedule takes effect. Must match the format HHmm where HH is 00-23 and mm is 00-59 (e.g. 0930, 2300, etc.)
	DailyRecurrenceTime *string `json:"dailyRecurrenceTime,omitempty" tf:"daily_recurrence_time,omitempty"`

	// Whether to enable the schedule. Possible values are true and false. Defaults to true.
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// The Dev Test Global Schedule ID.
	ID *string `json:"id,omitempty" tf:"id,omitempty"`

	// The location where the schedule is created. Changing this forces a new resource to be created.
	Location *string `json:"location,omitempty" tf:"location,omitempty"`

	// The notification setting of a schedule. A notification_settings block as defined below.
	NotificationSettings []NotificationSettingsObservation `json:"notificationSettings,omitempty" tf:"notification_settings,omitempty"`

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

	// The time zone ID (e.g. Pacific Standard time). Refer to this guide for a full list of accepted time zone names.
	Timezone *string `json:"timezone,omitempty" tf:"timezone,omitempty"`

	// The resource ID of the target ARM-based Virtual Machine. Changing this forces a new resource to be created.
	VirtualMachineID *string `json:"virtualMachineId,omitempty" tf:"virtual_machine_id,omitempty"`
}

func (*GlobalVMShutdownScheduleObservation) DeepCopy

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

func (*GlobalVMShutdownScheduleObservation) DeepCopyInto

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

type GlobalVMShutdownScheduleParameters

type GlobalVMShutdownScheduleParameters struct {

	// The time each day when the schedule takes effect. Must match the format HHmm where HH is 00-23 and mm is 00-59 (e.g. 0930, 2300, etc.)
	// +kubebuilder:validation:Optional
	DailyRecurrenceTime *string `json:"dailyRecurrenceTime,omitempty" tf:"daily_recurrence_time,omitempty"`

	// Whether to enable the schedule. Possible values are true and false. Defaults to true.
	// +kubebuilder:validation:Optional
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

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

	// The notification setting of a schedule. A notification_settings block as defined below.
	// +kubebuilder:validation:Optional
	NotificationSettings []NotificationSettingsParameters `json:"notificationSettings,omitempty" tf:"notification_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 time zone ID (e.g. Pacific Standard time). Refer to this guide for a full list of accepted time zone names.
	// +kubebuilder:validation:Optional
	Timezone *string `json:"timezone,omitempty" tf:"timezone,omitempty"`

	// The resource ID of the target ARM-based 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 (*GlobalVMShutdownScheduleParameters) DeepCopy

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

func (*GlobalVMShutdownScheduleParameters) DeepCopyInto

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

type GlobalVMShutdownScheduleSpec

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

GlobalVMShutdownScheduleSpec defines the desired state of GlobalVMShutdownSchedule

func (*GlobalVMShutdownScheduleSpec) DeepCopy

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

func (*GlobalVMShutdownScheduleSpec) DeepCopyInto

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

type GlobalVMShutdownScheduleStatus

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

GlobalVMShutdownScheduleStatus defines the observed state of GlobalVMShutdownSchedule.

func (*GlobalVMShutdownScheduleStatus) DeepCopy

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

func (*GlobalVMShutdownScheduleStatus) DeepCopyInto

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

type HourlyRecurrenceInitParameters added in v0.35.0

type HourlyRecurrenceInitParameters struct {

	// Minutes of the hour the schedule will run.
	Minute *float64 `json:"minute,omitempty" tf:"minute,omitempty"`
}

func (*HourlyRecurrenceInitParameters) DeepCopy added in v0.35.0

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

func (*HourlyRecurrenceInitParameters) DeepCopyInto added in v0.35.0

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

type HourlyRecurrenceObservation

type HourlyRecurrenceObservation struct {

	// Minutes of the hour the schedule will run.
	Minute *float64 `json:"minute,omitempty" tf:"minute,omitempty"`
}

func (*HourlyRecurrenceObservation) DeepCopy

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

func (*HourlyRecurrenceObservation) DeepCopyInto

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

type HourlyRecurrenceParameters

type HourlyRecurrenceParameters struct {

	// Minutes of the hour the schedule will run.
	// +kubebuilder:validation:Optional
	Minute *float64 `json:"minute" tf:"minute,omitempty"`
}

func (*HourlyRecurrenceParameters) DeepCopy

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

func (*HourlyRecurrenceParameters) DeepCopyInto

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

type InboundNATRuleInitParameters added in v0.35.0

type InboundNATRuleInitParameters struct {

	// The Backend Port associated with this NAT Rule. Changing this forces a new resource to be created.
	BackendPort *float64 `json:"backendPort,omitempty" tf:"backend_port,omitempty"`

	// The Protocol used for this NAT Rule. Possible values are Tcp and Udp.
	Protocol *string `json:"protocol,omitempty" tf:"protocol,omitempty"`
}

func (*InboundNATRuleInitParameters) DeepCopy added in v0.35.0

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

func (*InboundNATRuleInitParameters) DeepCopyInto added in v0.35.0

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

type InboundNATRuleObservation

type InboundNATRuleObservation struct {

	// The Backend Port associated with this NAT Rule. Changing this forces a new resource to be created.
	BackendPort *float64 `json:"backendPort,omitempty" tf:"backend_port,omitempty"`

	// The frontend port associated with this Inbound NAT Rule.
	FrontendPort *float64 `json:"frontendPort,omitempty" tf:"frontend_port,omitempty"`

	// The Protocol used for this NAT Rule. Possible values are Tcp and Udp.
	Protocol *string `json:"protocol,omitempty" tf:"protocol,omitempty"`
}

func (*InboundNATRuleObservation) DeepCopy

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

func (*InboundNATRuleObservation) DeepCopyInto

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

type InboundNATRuleParameters

type InboundNATRuleParameters struct {

	// The Backend Port associated with this NAT Rule. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	BackendPort *float64 `json:"backendPort" tf:"backend_port,omitempty"`

	// The Protocol used for this NAT Rule. Possible values are Tcp and Udp.
	// +kubebuilder:validation:Optional
	Protocol *string `json:"protocol" tf:"protocol,omitempty"`
}

func (*InboundNATRuleParameters) DeepCopy

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

func (*InboundNATRuleParameters) DeepCopyInto

func (in *InboundNATRuleParameters) DeepCopyInto(out *InboundNATRuleParameters)

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

type Lab

type Lab 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   LabSpec   `json:"spec"`
	Status LabStatus `json:"status,omitempty"`
}

Lab is the Schema for the Labs API. Manages a Dev Test Lab. +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 (*Lab) DeepCopy

func (in *Lab) DeepCopy() *Lab

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

func (*Lab) DeepCopyInto

func (in *Lab) DeepCopyInto(out *Lab)

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

func (*Lab) DeepCopyObject

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

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

func (*Lab) GetCondition

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

GetCondition of this Lab.

func (*Lab) GetConnectionDetailsMapping

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

GetConnectionDetailsMapping for this Lab

func (*Lab) GetDeletionPolicy

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

GetDeletionPolicy of this Lab.

func (*Lab) GetID

func (tr *Lab) GetID() string

GetID returns ID of underlying Terraform resource of this Lab

func (*Lab) GetInitParameters added in v0.35.0

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

GetInitParameters of this Lab

func (*Lab) GetManagementPolicies added in v0.35.0

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

GetManagementPolicies of this Lab.

func (*Lab) GetMergedParameters added in v0.40.0

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

GetInitParameters of this Lab

func (*Lab) GetObservation

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

GetObservation of this Lab

func (*Lab) GetParameters

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

GetParameters of this Lab

func (*Lab) GetProviderConfigReference

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

GetProviderConfigReference of this Lab.

func (*Lab) GetPublishConnectionDetailsTo

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

GetPublishConnectionDetailsTo of this Lab.

func (*Lab) GetTerraformResourceType

func (mg *Lab) GetTerraformResourceType() string

GetTerraformResourceType returns Terraform resource type for this Lab

func (*Lab) GetTerraformSchemaVersion

func (tr *Lab) GetTerraformSchemaVersion() int

GetTerraformSchemaVersion returns the associated Terraform schema version

func (*Lab) GetWriteConnectionSecretToReference

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

GetWriteConnectionSecretToReference of this Lab.

func (*Lab) Hub added in v0.42.1

func (tr *Lab) Hub()

Hub marks this type as a conversion hub.

func (*Lab) LateInitialize

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

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

func (*Lab) ResolveReferences

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

ResolveReferences of this Lab.

func (*Lab) SetConditions

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

SetConditions of this Lab.

func (*Lab) SetDeletionPolicy

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

SetDeletionPolicy of this Lab.

func (*Lab) SetManagementPolicies added in v0.35.0

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

SetManagementPolicies of this Lab.

func (*Lab) SetObservation

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

SetObservation for this Lab

func (*Lab) SetParameters

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

SetParameters for this Lab

func (*Lab) SetProviderConfigReference

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

SetProviderConfigReference of this Lab.

func (*Lab) SetPublishConnectionDetailsTo

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

SetPublishConnectionDetailsTo of this Lab.

func (*Lab) SetWriteConnectionSecretToReference

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

SetWriteConnectionSecretToReference of this Lab.

type LabInitParameters added in v0.35.0

type LabInitParameters struct {

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

	// The type of storage used by the Dev Test Lab. Possible values are Standard and Premium. Defaults to Premium.
	StorageType *string `json:"storageType,omitempty" tf:"storage_type,omitempty"`

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

func (*LabInitParameters) DeepCopy added in v0.35.0

func (in *LabInitParameters) DeepCopy() *LabInitParameters

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

func (*LabInitParameters) DeepCopyInto added in v0.35.0

func (in *LabInitParameters) DeepCopyInto(out *LabInitParameters)

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

type LabList

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

LabList contains a list of Labs

func (*LabList) DeepCopy

func (in *LabList) DeepCopy() *LabList

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

func (*LabList) DeepCopyInto

func (in *LabList) DeepCopyInto(out *LabList)

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

func (*LabList) DeepCopyObject

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

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

func (*LabList) GetItems

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

GetItems of this LabList.

type LabObservation

type LabObservation struct {

	// The ID of the Storage Account used for Artifact Storage.
	ArtifactsStorageAccountID *string `json:"artifactsStorageAccountId,omitempty" tf:"artifacts_storage_account_id,omitempty"`

	// The ID of the Default Premium Storage Account for this Dev Test Lab.
	DefaultPremiumStorageAccountID *string `json:"defaultPremiumStorageAccountId,omitempty" tf:"default_premium_storage_account_id,omitempty"`

	// The ID of the Default Storage Account for this Dev Test Lab.
	DefaultStorageAccountID *string `json:"defaultStorageAccountId,omitempty" tf:"default_storage_account_id,omitempty"`

	// The ID of the Dev Test Lab.
	ID *string `json:"id,omitempty" tf:"id,omitempty"`

	// The ID of the Key used for this Dev Test Lab.
	KeyVaultID *string `json:"keyVaultId,omitempty" tf:"key_vault_id,omitempty"`

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

	// The ID of the Storage Account used for Storage of Premium Data Disk.
	PremiumDataDiskStorageAccountID *string `json:"premiumDataDiskStorageAccountId,omitempty" tf:"premium_data_disk_storage_account_id,omitempty"`

	// The name of the resource group under which the Dev Test Lab resource has to be created. Changing this forces a new resource to be created.
	ResourceGroupName *string `json:"resourceGroupName,omitempty" tf:"resource_group_name,omitempty"`

	// The type of storage used by the Dev Test Lab. Possible values are Standard and Premium. Defaults to Premium.
	StorageType *string `json:"storageType,omitempty" tf:"storage_type,omitempty"`

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

	// The unique immutable identifier of the Dev Test Lab.
	UniqueIdentifier *string `json:"uniqueIdentifier,omitempty" tf:"unique_identifier,omitempty"`
}

func (*LabObservation) DeepCopy

func (in *LabObservation) DeepCopy() *LabObservation

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

func (*LabObservation) DeepCopyInto

func (in *LabObservation) DeepCopyInto(out *LabObservation)

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

type LabParameters

type LabParameters struct {

	// Specifies the supported Azure location where the Dev Test Lab should exist. 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 under which the Dev Test Lab resource has to be created. Changing this forces a new resource to be created.
	// +crossplane:generate:reference:type=github.com/upbound/provider-azure/apis/azure/v1beta1.ResourceGroup
	// +kubebuilder:validation:Optional
	ResourceGroupName *string `json:"resourceGroupName,omitempty" tf:"resource_group_name,omitempty"`

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

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

	// The type of storage used by the Dev Test Lab. Possible values are Standard and Premium. Defaults to Premium.
	// +kubebuilder:validation:Optional
	StorageType *string `json:"storageType,omitempty" tf:"storage_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"`
}

func (*LabParameters) DeepCopy

func (in *LabParameters) DeepCopy() *LabParameters

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

func (*LabParameters) DeepCopyInto

func (in *LabParameters) DeepCopyInto(out *LabParameters)

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

type LabSpec

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

LabSpec defines the desired state of Lab

func (*LabSpec) DeepCopy

func (in *LabSpec) DeepCopy() *LabSpec

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

func (*LabSpec) DeepCopyInto

func (in *LabSpec) DeepCopyInto(out *LabSpec)

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

type LabStatus

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

LabStatus defines the observed state of Lab.

func (*LabStatus) DeepCopy

func (in *LabStatus) DeepCopy() *LabStatus

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

func (*LabStatus) DeepCopyInto

func (in *LabStatus) DeepCopyInto(out *LabStatus)

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.galleryImageReference) || (has(self.initProvider) && has(self.initProvider.galleryImageReference))",message="spec.forProvider.galleryImageReference is a required parameter"
	// +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || (has(self.initProvider) && has(self.initProvider.location))",message="spec.forProvider.location is a required parameter"
	// +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.name) || (has(self.initProvider) && has(self.initProvider.name))",message="spec.forProvider.name is a required parameter"
	// +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.size) || (has(self.initProvider) && has(self.initProvider.size))",message="spec.forProvider.size is a required parameter"
	// +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.storageType) || (has(self.initProvider) && has(self.initProvider.storageType))",message="spec.forProvider.storageType is a required parameter"
	// +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.username) || (has(self.initProvider) && has(self.initProvider.username))",message="spec.forProvider.username 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 within a Dev Test Lab. +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) ConvertFrom added in v1.2.0

func (tr *LinuxVirtualMachine) ConvertFrom(srcRaw conversion.Hub) error

ConvertFrom converts from the hub type to the LinuxVirtualMachine type.

func (*LinuxVirtualMachine) ConvertTo added in v1.2.0

func (tr *LinuxVirtualMachine) ConvertTo(dstRaw conversion.Hub) error

ConvertTo converts this LinuxVirtualMachine to the hub type.

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) 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 LinuxVirtualMachineInitParameters added in v0.35.0

type LinuxVirtualMachineInitParameters struct {

	// Can this Virtual Machine be claimed by users? Defaults to true.
	AllowClaim *bool `json:"allowClaim,omitempty" tf:"allow_claim,omitempty"`

	// Should the Virtual Machine be created without a Public IP Address? Changing this forces a new resource to be created.
	DisallowPublicIPAddress *bool `json:"disallowPublicIpAddress,omitempty" tf:"disallow_public_ip_address,omitempty"`

	// A gallery_image_reference block as defined below.
	GalleryImageReference []GalleryImageReferenceInitParameters `json:"galleryImageReference,omitempty" tf:"gallery_image_reference,omitempty"`

	// One or more inbound_nat_rule blocks as defined below. Changing this forces a new resource to be created.
	InboundNATRule []InboundNATRuleInitParameters `json:"inboundNatRule,omitempty" tf:"inbound_nat_rule,omitempty"`

	// Specifies the name of the Dev Test Lab in which the Virtual Machine should be created. Changing this forces a new resource to be created.
	// +crossplane:generate:reference:type=github.com/upbound/provider-azure/apis/devtestlab/v1beta1.Lab
	LabName *string `json:"labName,omitempty" tf:"lab_name,omitempty"`

	// Reference to a Lab in devtestlab to populate labName.
	// +kubebuilder:validation:Optional
	LabNameRef *v1.Reference `json:"labNameRef,omitempty" tf:"-"`

	// Selector for a Lab in devtestlab to populate labName.
	// +kubebuilder:validation:Optional
	LabNameSelector *v1.Selector `json:"labNameSelector,omitempty" tf:"-"`

	// The name of a Subnet within the Dev Test Virtual Network where this machine should exist. Changing this forces a new resource to be created.
	// +crossplane:generate:reference:type=github.com/upbound/provider-azure/apis/network/v1beta1.Subnet
	LabSubnetName *string `json:"labSubnetName,omitempty" tf:"lab_subnet_name,omitempty"`

	// Reference to a Subnet in network to populate labSubnetName.
	// +kubebuilder:validation:Optional
	LabSubnetNameRef *v1.Reference `json:"labSubnetNameRef,omitempty" tf:"-"`

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

	// The ID of the Dev Test Virtual Network where this Virtual Machine should be created. Changing this forces a new resource to be created.
	// +crossplane:generate:reference:type=github.com/upbound/provider-azure/apis/devtestlab/v1beta1.VirtualNetwork
	// +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractResourceID()
	LabVirtualNetworkID *string `json:"labVirtualNetworkId,omitempty" tf:"lab_virtual_network_id,omitempty"`

	// Reference to a VirtualNetwork in devtestlab to populate labVirtualNetworkId.
	// +kubebuilder:validation:Optional
	LabVirtualNetworkIDRef *v1.Reference `json:"labVirtualNetworkIdRef,omitempty" tf:"-"`

	// Selector for a VirtualNetwork in devtestlab to populate labVirtualNetworkId.
	// +kubebuilder:validation:Optional
	LabVirtualNetworkIDSelector *v1.Selector `json:"labVirtualNetworkIdSelector,omitempty" tf:"-"`

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

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

	// Any notes about the Virtual Machine.
	Notes *string `json:"notes,omitempty" tf:"notes,omitempty"`

	// The name of the resource group in which the Dev Test Lab resource exists. Changing this forces a new resource to be created.
	// +crossplane:generate:reference:type=github.com/upbound/provider-azure/apis/azure/v1beta1.ResourceGroup
	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 SSH Key associated with the username used to login to this Virtual Machine. Changing this forces a new resource to be created.
	SSHKey *string `json:"sshKey,omitempty" tf:"ssh_key,omitempty"`

	// The Machine Size to use for this Virtual Machine, such as Standard_F2. Changing this forces a new resource to be created.
	Size *string `json:"size,omitempty" tf:"size,omitempty"`

	// The type of Storage to use on this Virtual Machine. Possible values are Standard and Premium. Changing this forces a new resource to be created.
	StorageType *string `json:"storageType,omitempty" tf:"storage_type,omitempty"`

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

	// The Username associated with the local administrator on this Virtual Machine. Changing this forces a new resource to be created.
	Username *string `json:"username,omitempty" tf:"username,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 {

	// Can this Virtual Machine be claimed by users? Defaults to true.
	AllowClaim *bool `json:"allowClaim,omitempty" tf:"allow_claim,omitempty"`

	// Should the Virtual Machine be created without a Public IP Address? Changing this forces a new resource to be created.
	DisallowPublicIPAddress *bool `json:"disallowPublicIpAddress,omitempty" tf:"disallow_public_ip_address,omitempty"`

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

	// A gallery_image_reference block as defined below.
	GalleryImageReference []GalleryImageReferenceObservation `json:"galleryImageReference,omitempty" tf:"gallery_image_reference,omitempty"`

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

	// One or more inbound_nat_rule blocks as defined below. Changing this forces a new resource to be created.
	InboundNATRule []InboundNATRuleObservation `json:"inboundNatRule,omitempty" tf:"inbound_nat_rule,omitempty"`

	// Specifies the name of the Dev Test Lab in which the Virtual Machine should be created. Changing this forces a new resource to be created.
	LabName *string `json:"labName,omitempty" tf:"lab_name,omitempty"`

	// The name of a Subnet within the Dev Test Virtual Network where this machine should exist. Changing this forces a new resource to be created.
	LabSubnetName *string `json:"labSubnetName,omitempty" tf:"lab_subnet_name,omitempty"`

	// The ID of the Dev Test Virtual Network where this Virtual Machine should be created. Changing this forces a new resource to be created.
	LabVirtualNetworkID *string `json:"labVirtualNetworkId,omitempty" tf:"lab_virtual_network_id,omitempty"`

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

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

	// Any notes about the Virtual Machine.
	Notes *string `json:"notes,omitempty" tf:"notes,omitempty"`

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

	// The SSH Key associated with the username used to login to this Virtual Machine. Changing this forces a new resource to be created.
	SSHKey *string `json:"sshKey,omitempty" tf:"ssh_key,omitempty"`

	// The Machine Size to use for this Virtual Machine, such as Standard_F2. Changing this forces a new resource to be created.
	Size *string `json:"size,omitempty" tf:"size,omitempty"`

	// The type of Storage to use on this Virtual Machine. Possible values are Standard and Premium. Changing this forces a new resource to be created.
	StorageType *string `json:"storageType,omitempty" tf:"storage_type,omitempty"`

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

	// The unique immutable identifier of the Virtual Machine.
	UniqueIdentifier *string `json:"uniqueIdentifier,omitempty" tf:"unique_identifier,omitempty"`

	// The Username associated with the local administrator on this Virtual Machine. Changing this forces a new resource to be created.
	Username *string `json:"username,omitempty" tf:"username,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 LinuxVirtualMachineParameters

type LinuxVirtualMachineParameters struct {

	// Can this Virtual Machine be claimed by users? Defaults to true.
	// +kubebuilder:validation:Optional
	AllowClaim *bool `json:"allowClaim,omitempty" tf:"allow_claim,omitempty"`

	// Should the Virtual Machine be created without a Public IP Address? Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	DisallowPublicIPAddress *bool `json:"disallowPublicIpAddress,omitempty" tf:"disallow_public_ip_address,omitempty"`

	// A gallery_image_reference block as defined below.
	// +kubebuilder:validation:Optional
	GalleryImageReference []GalleryImageReferenceParameters `json:"galleryImageReference,omitempty" tf:"gallery_image_reference,omitempty"`

	// One or more inbound_nat_rule blocks as defined below. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	InboundNATRule []InboundNATRuleParameters `json:"inboundNatRule,omitempty" tf:"inbound_nat_rule,omitempty"`

	// Specifies the name of the Dev Test Lab in which the Virtual Machine should be created. Changing this forces a new resource to be created.
	// +crossplane:generate:reference:type=github.com/upbound/provider-azure/apis/devtestlab/v1beta1.Lab
	// +kubebuilder:validation:Optional
	LabName *string `json:"labName,omitempty" tf:"lab_name,omitempty"`

	// Reference to a Lab in devtestlab to populate labName.
	// +kubebuilder:validation:Optional
	LabNameRef *v1.Reference `json:"labNameRef,omitempty" tf:"-"`

	// Selector for a Lab in devtestlab to populate labName.
	// +kubebuilder:validation:Optional
	LabNameSelector *v1.Selector `json:"labNameSelector,omitempty" tf:"-"`

	// The name of a Subnet within the Dev Test Virtual Network where this machine should exist. Changing this forces a new resource to be created.
	// +crossplane:generate:reference:type=github.com/upbound/provider-azure/apis/network/v1beta1.Subnet
	// +kubebuilder:validation:Optional
	LabSubnetName *string `json:"labSubnetName,omitempty" tf:"lab_subnet_name,omitempty"`

	// Reference to a Subnet in network to populate labSubnetName.
	// +kubebuilder:validation:Optional
	LabSubnetNameRef *v1.Reference `json:"labSubnetNameRef,omitempty" tf:"-"`

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

	// The ID of the Dev Test Virtual Network where this Virtual Machine should be created. Changing this forces a new resource to be created.
	// +crossplane:generate:reference:type=github.com/upbound/provider-azure/apis/devtestlab/v1beta1.VirtualNetwork
	// +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractResourceID()
	// +kubebuilder:validation:Optional
	LabVirtualNetworkID *string `json:"labVirtualNetworkId,omitempty" tf:"lab_virtual_network_id,omitempty"`

	// Reference to a VirtualNetwork in devtestlab to populate labVirtualNetworkId.
	// +kubebuilder:validation:Optional
	LabVirtualNetworkIDRef *v1.Reference `json:"labVirtualNetworkIdRef,omitempty" tf:"-"`

	// Selector for a VirtualNetwork in devtestlab to populate labVirtualNetworkId.
	// +kubebuilder:validation:Optional
	LabVirtualNetworkIDSelector *v1.Selector `json:"labVirtualNetworkIdSelector,omitempty" tf:"-"`

	// Specifies the supported Azure location where the Dev Test Lab 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 Dev Test Machine. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	Name *string `json:"name,omitempty" tf:"name,omitempty"`

	// Any notes about the Virtual Machine.
	// +kubebuilder:validation:Optional
	Notes *string `json:"notes,omitempty" tf:"notes,omitempty"`

	// The Password associated with the username used to login to this Virtual Machine. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	PasswordSecretRef *v1.SecretKeySelector `json:"passwordSecretRef,omitempty" tf:"-"`

	// The name of the resource group in which the Dev Test Lab resource 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:"-"`

	// The SSH Key associated with the username used to login to this Virtual Machine. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	SSHKey *string `json:"sshKey,omitempty" tf:"ssh_key,omitempty"`

	// The Machine Size to use for this Virtual Machine, such as Standard_F2. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	Size *string `json:"size,omitempty" tf:"size,omitempty"`

	// The type of Storage to use on this Virtual Machine. Possible values are Standard and Premium. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	StorageType *string `json:"storageType,omitempty" tf:"storage_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 Username associated with the local administrator on this Virtual Machine. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	Username *string `json:"username,omitempty" tf:"username,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 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 NotificationSettingsInitParameters added in v0.35.0

type NotificationSettingsInitParameters struct {

	// E-mail address to which the notification will be sent.
	Email *string `json:"email,omitempty" tf:"email,omitempty"`

	// Whether to enable pre-shutdown notifications. Possible values are true and false.
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// Time in minutes between 15 and 120 before a shutdown event at which a notification will be sent. Defaults to 30.
	TimeInMinutes *float64 `json:"timeInMinutes,omitempty" tf:"time_in_minutes,omitempty"`

	// The webhook URL to which the notification will be sent.
	WebhookURL *string `json:"webhookUrl,omitempty" tf:"webhook_url,omitempty"`
}

func (*NotificationSettingsInitParameters) DeepCopy added in v0.35.0

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

func (*NotificationSettingsInitParameters) DeepCopyInto added in v0.35.0

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

type NotificationSettingsObservation

type NotificationSettingsObservation struct {

	// E-mail address to which the notification will be sent.
	Email *string `json:"email,omitempty" tf:"email,omitempty"`

	// Whether to enable pre-shutdown notifications. Possible values are true and false.
	Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"`

	// Time in minutes between 15 and 120 before a shutdown event at which a notification will be sent. Defaults to 30.
	TimeInMinutes *float64 `json:"timeInMinutes,omitempty" tf:"time_in_minutes,omitempty"`

	// The webhook URL to which the notification will be sent.
	WebhookURL *string `json:"webhookUrl,omitempty" tf:"webhook_url,omitempty"`
}

func (*NotificationSettingsObservation) DeepCopy

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

func (*NotificationSettingsObservation) DeepCopyInto

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

type NotificationSettingsParameters

type NotificationSettingsParameters struct {

	// E-mail address to which the notification will be sent.
	// +kubebuilder:validation:Optional
	Email *string `json:"email,omitempty" tf:"email,omitempty"`

	// Whether to enable pre-shutdown notifications. Possible values are true and false.
	// +kubebuilder:validation:Optional
	Enabled *bool `json:"enabled" tf:"enabled,omitempty"`

	// Time in minutes between 15 and 120 before a shutdown event at which a notification will be sent. Defaults to 30.
	// +kubebuilder:validation:Optional
	TimeInMinutes *float64 `json:"timeInMinutes,omitempty" tf:"time_in_minutes,omitempty"`

	// The webhook URL to which the notification will be sent.
	// +kubebuilder:validation:Optional
	WebhookURL *string `json:"webhookUrl,omitempty" tf:"webhook_url,omitempty"`
}

func (*NotificationSettingsParameters) DeepCopy

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

func (*NotificationSettingsParameters) DeepCopyInto

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

type Policy

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

Policy is the Schema for the Policys API. Manages a Policy within a Dev Test Policy 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 (*Policy) DeepCopy

func (in *Policy) DeepCopy() *Policy

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

func (*Policy) DeepCopyInto

func (in *Policy) DeepCopyInto(out *Policy)

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

func (*Policy) DeepCopyObject

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

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

func (*Policy) GetCondition

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

GetCondition of this Policy.

func (*Policy) GetConnectionDetailsMapping

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

GetConnectionDetailsMapping for this Policy

func (*Policy) GetDeletionPolicy

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

GetDeletionPolicy of this Policy.

func (*Policy) GetID

func (tr *Policy) GetID() string

GetID returns ID of underlying Terraform resource of this Policy

func (*Policy) GetInitParameters added in v0.35.0

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

GetInitParameters of this Policy

func (*Policy) GetManagementPolicies added in v0.35.0

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

GetManagementPolicies of this Policy.

func (*Policy) GetMergedParameters added in v0.40.0

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

GetInitParameters of this Policy

func (*Policy) GetObservation

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

GetObservation of this Policy

func (*Policy) GetParameters

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

GetParameters of this Policy

func (*Policy) GetProviderConfigReference

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

GetProviderConfigReference of this Policy.

func (*Policy) GetPublishConnectionDetailsTo

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

GetPublishConnectionDetailsTo of this Policy.

func (*Policy) GetTerraformResourceType

func (mg *Policy) GetTerraformResourceType() string

GetTerraformResourceType returns Terraform resource type for this Policy

func (*Policy) GetTerraformSchemaVersion

func (tr *Policy) GetTerraformSchemaVersion() int

GetTerraformSchemaVersion returns the associated Terraform schema version

func (*Policy) GetWriteConnectionSecretToReference

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

GetWriteConnectionSecretToReference of this Policy.

func (*Policy) Hub added in v0.42.1

func (tr *Policy) Hub()

Hub marks this type as a conversion hub.

func (*Policy) LateInitialize

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

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

func (*Policy) ResolveReferences

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

ResolveReferences of this Policy.

func (*Policy) SetConditions

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

SetConditions of this Policy.

func (*Policy) SetDeletionPolicy

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

SetDeletionPolicy of this Policy.

func (*Policy) SetManagementPolicies added in v0.35.0

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

SetManagementPolicies of this Policy.

func (*Policy) SetObservation

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

SetObservation for this Policy

func (*Policy) SetParameters

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

SetParameters for this Policy

func (*Policy) SetProviderConfigReference

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

SetProviderConfigReference of this Policy.

func (*Policy) SetPublishConnectionDetailsTo

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

SetPublishConnectionDetailsTo of this Policy.

func (*Policy) SetWriteConnectionSecretToReference

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

SetWriteConnectionSecretToReference of this Policy.

type PolicyInitParameters added in v0.35.0

type PolicyInitParameters struct {

	// A description for the Policy.
	Description *string `json:"description,omitempty" tf:"description,omitempty"`

	// The Evaluation Type used for this Policy. Possible values include: 'AllowedValuesPolicy', 'MaxValuePolicy'. Changing this forces a new resource to be created.
	EvaluatorType *string `json:"evaluatorType,omitempty" tf:"evaluator_type,omitempty"`

	// The Fact Data for this Policy.
	FactData *string `json:"factData,omitempty" tf:"fact_data,omitempty"`

	// Specifies the name of the Dev Test Lab in which the Policy should be created. Changing this forces a new resource to be created.
	// +crossplane:generate:reference:type=github.com/upbound/provider-azure/apis/devtestlab/v1beta1.Lab
	LabName *string `json:"labName,omitempty" tf:"lab_name,omitempty"`

	// Reference to a Lab in devtestlab to populate labName.
	// +kubebuilder:validation:Optional
	LabNameRef *v1.Reference `json:"labNameRef,omitempty" tf:"-"`

	// Selector for a Lab in devtestlab to populate labName.
	// +kubebuilder:validation:Optional
	LabNameSelector *v1.Selector `json:"labNameSelector,omitempty" tf:"-"`

	// Specifies the name of the Dev Test Policy. Possible values are GalleryImage, LabPremiumVmCount, LabTargetCost, LabVmCount, LabVmSize, UserOwnedLabPremiumVmCount, UserOwnedLabVmCount and UserOwnedLabVmCountInSubnet. Changing this forces a new resource to be created.
	Name *string `json:"name,omitempty" tf:"name,omitempty"`

	// Specifies the name of the Policy Set within the Dev Test Lab where this policy should be created. Changing this forces a new resource to be created.
	PolicySetName *string `json:"policySetName,omitempty" tf:"policy_set_name,omitempty"`

	// The name of the resource group in which the Dev Test Lab resource exists. Changing this forces a new resource to be created.
	// +crossplane:generate:reference:type=github.com/upbound/provider-azure/apis/azure/v1beta1.ResourceGroup
	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.
	// +mapType=granular
	Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"`

	// The Threshold for this Policy.
	Threshold *string `json:"threshold,omitempty" tf:"threshold,omitempty"`
}

func (*PolicyInitParameters) DeepCopy added in v0.35.0

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

func (*PolicyInitParameters) DeepCopyInto added in v0.35.0

func (in *PolicyInitParameters) DeepCopyInto(out *PolicyInitParameters)

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

type PolicyList

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

PolicyList contains a list of Policys

func (*PolicyList) DeepCopy

func (in *PolicyList) DeepCopy() *PolicyList

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

func (*PolicyList) DeepCopyInto

func (in *PolicyList) DeepCopyInto(out *PolicyList)

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

func (*PolicyList) DeepCopyObject

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

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

func (*PolicyList) GetItems

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

GetItems of this PolicyList.

type PolicyObservation

type PolicyObservation struct {

	// A description for the Policy.
	Description *string `json:"description,omitempty" tf:"description,omitempty"`

	// The Evaluation Type used for this Policy. Possible values include: 'AllowedValuesPolicy', 'MaxValuePolicy'. Changing this forces a new resource to be created.
	EvaluatorType *string `json:"evaluatorType,omitempty" tf:"evaluator_type,omitempty"`

	// The Fact Data for this Policy.
	FactData *string `json:"factData,omitempty" tf:"fact_data,omitempty"`

	// The ID of the Dev Test Policy.
	ID *string `json:"id,omitempty" tf:"id,omitempty"`

	// Specifies the name of the Dev Test Lab in which the Policy should be created. Changing this forces a new resource to be created.
	LabName *string `json:"labName,omitempty" tf:"lab_name,omitempty"`

	// Specifies the name of the Dev Test Policy. Possible values are GalleryImage, LabPremiumVmCount, LabTargetCost, LabVmCount, LabVmSize, UserOwnedLabPremiumVmCount, UserOwnedLabVmCount and UserOwnedLabVmCountInSubnet. Changing this forces a new resource to be created.
	Name *string `json:"name,omitempty" tf:"name,omitempty"`

	// Specifies the name of the Policy Set within the Dev Test Lab where this policy should be created. Changing this forces a new resource to be created.
	PolicySetName *string `json:"policySetName,omitempty" tf:"policy_set_name,omitempty"`

	// The name of the resource group in which the Dev Test Lab resource exists. 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"`

	// The Threshold for this Policy.
	Threshold *string `json:"threshold,omitempty" tf:"threshold,omitempty"`
}

func (*PolicyObservation) DeepCopy

func (in *PolicyObservation) DeepCopy() *PolicyObservation

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

func (*PolicyObservation) DeepCopyInto

func (in *PolicyObservation) DeepCopyInto(out *PolicyObservation)

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

type PolicyParameters

type PolicyParameters struct {

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

	// The Evaluation Type used for this Policy. Possible values include: 'AllowedValuesPolicy', 'MaxValuePolicy'. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	EvaluatorType *string `json:"evaluatorType,omitempty" tf:"evaluator_type,omitempty"`

	// The Fact Data for this Policy.
	// +kubebuilder:validation:Optional
	FactData *string `json:"factData,omitempty" tf:"fact_data,omitempty"`

	// Specifies the name of the Dev Test Lab in which the Policy should be created. Changing this forces a new resource to be created.
	// +crossplane:generate:reference:type=github.com/upbound/provider-azure/apis/devtestlab/v1beta1.Lab
	// +kubebuilder:validation:Optional
	LabName *string `json:"labName,omitempty" tf:"lab_name,omitempty"`

	// Reference to a Lab in devtestlab to populate labName.
	// +kubebuilder:validation:Optional
	LabNameRef *v1.Reference `json:"labNameRef,omitempty" tf:"-"`

	// Selector for a Lab in devtestlab to populate labName.
	// +kubebuilder:validation:Optional
	LabNameSelector *v1.Selector `json:"labNameSelector,omitempty" tf:"-"`

	// Specifies the name of the Dev Test Policy. Possible values are GalleryImage, LabPremiumVmCount, LabTargetCost, LabVmCount, LabVmSize, UserOwnedLabPremiumVmCount, UserOwnedLabVmCount and UserOwnedLabVmCountInSubnet. 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 Policy Set within the Dev Test Lab where this policy should be created. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	PolicySetName *string `json:"policySetName,omitempty" tf:"policy_set_name,omitempty"`

	// The name of the resource group in which the Dev Test Lab resource 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:"-"`

	// 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 Threshold for this Policy.
	// +kubebuilder:validation:Optional
	Threshold *string `json:"threshold,omitempty" tf:"threshold,omitempty"`
}

func (*PolicyParameters) DeepCopy

func (in *PolicyParameters) DeepCopy() *PolicyParameters

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

func (*PolicyParameters) DeepCopyInto

func (in *PolicyParameters) DeepCopyInto(out *PolicyParameters)

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

type PolicySpec

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

PolicySpec defines the desired state of Policy

func (*PolicySpec) DeepCopy

func (in *PolicySpec) DeepCopy() *PolicySpec

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

func (*PolicySpec) DeepCopyInto

func (in *PolicySpec) DeepCopyInto(out *PolicySpec)

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

type PolicyStatus

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

PolicyStatus defines the observed state of Policy.

func (*PolicyStatus) DeepCopy

func (in *PolicyStatus) DeepCopy() *PolicyStatus

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

func (*PolicyStatus) DeepCopyInto

func (in *PolicyStatus) DeepCopyInto(out *PolicyStatus)

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

type Schedule

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

Schedule is the Schema for the Schedules API. Manages automated startup and shutdown schedules for Azure Dev Test Lab. +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 (*Schedule) ConvertFrom added in v1.2.0

func (tr *Schedule) ConvertFrom(srcRaw conversion.Hub) error

ConvertFrom converts from the hub type to the Schedule type.

func (*Schedule) ConvertTo added in v1.2.0

func (tr *Schedule) ConvertTo(dstRaw conversion.Hub) error

ConvertTo converts this Schedule to the hub type.

func (*Schedule) DeepCopy

func (in *Schedule) DeepCopy() *Schedule

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

func (*Schedule) DeepCopyInto

func (in *Schedule) DeepCopyInto(out *Schedule)

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

func (*Schedule) DeepCopyObject

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

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

func (*Schedule) GetCondition

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

GetCondition of this Schedule.

func (*Schedule) GetConnectionDetailsMapping

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

GetConnectionDetailsMapping for this Schedule

func (*Schedule) GetDeletionPolicy

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

GetDeletionPolicy of this Schedule.

func (*Schedule) GetID

func (tr *Schedule) GetID() string

GetID returns ID of underlying Terraform resource of this Schedule

func (*Schedule) GetInitParameters added in v0.35.0

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

GetInitParameters of this Schedule

func (*Schedule) GetManagementPolicies added in v0.35.0

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

GetManagementPolicies of this Schedule.

func (*Schedule) GetMergedParameters added in v0.40.0

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

GetInitParameters of this Schedule

func (*Schedule) GetObservation

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

GetObservation of this Schedule

func (*Schedule) GetParameters

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

GetParameters of this Schedule

func (*Schedule) GetProviderConfigReference

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

GetProviderConfigReference of this Schedule.

func (*Schedule) GetPublishConnectionDetailsTo

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

GetPublishConnectionDetailsTo of this Schedule.

func (*Schedule) GetTerraformResourceType

func (mg *Schedule) GetTerraformResourceType() string

GetTerraformResourceType returns Terraform resource type for this Schedule

func (*Schedule) GetTerraformSchemaVersion

func (tr *Schedule) GetTerraformSchemaVersion() int

GetTerraformSchemaVersion returns the associated Terraform schema version

func (*Schedule) GetWriteConnectionSecretToReference

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

GetWriteConnectionSecretToReference of this Schedule.

func (*Schedule) LateInitialize

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

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

func (*Schedule) ResolveReferences

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

ResolveReferences of this Schedule.

func (*Schedule) SetConditions

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

SetConditions of this Schedule.

func (*Schedule) SetDeletionPolicy

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

SetDeletionPolicy of this Schedule.

func (*Schedule) SetManagementPolicies added in v0.35.0

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

SetManagementPolicies of this Schedule.

func (*Schedule) SetObservation

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

SetObservation for this Schedule

func (*Schedule) SetParameters

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

SetParameters for this Schedule

func (*Schedule) SetProviderConfigReference

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

SetProviderConfigReference of this Schedule.

func (*Schedule) SetPublishConnectionDetailsTo

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

SetPublishConnectionDetailsTo of this Schedule.

func (*Schedule) SetWriteConnectionSecretToReference

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

SetWriteConnectionSecretToReference of this Schedule.

type ScheduleInitParameters added in v0.35.0

type ScheduleInitParameters struct {

	// The properties of a daily schedule. If the schedule occurs once each day of the week, specify the daily recurrence. A daily_recurrence block as defined below.
	DailyRecurrence []DailyRecurrenceInitParameters `json:"dailyRecurrence,omitempty" tf:"daily_recurrence,omitempty"`

	// The properties of an hourly schedule. If the schedule occurs multiple times a day, specify the hourly recurrence. A hourly_recurrence block as defined below.
	HourlyRecurrence []HourlyRecurrenceInitParameters `json:"hourlyRecurrence,omitempty" tf:"hourly_recurrence,omitempty"`

	// The location where the schedule is created. Changing this forces a new resource to be created.
	Location *string `json:"location,omitempty" tf:"location,omitempty"`

	// The notification setting of a schedule. A notification_settings block as defined below.
	NotificationSettings []ScheduleNotificationSettingsInitParameters `json:"notificationSettings,omitempty" tf:"notification_settings,omitempty"`

	// The status of this schedule. Possible values are Enabled and Disabled. Defaults to Disabled.
	Status *string `json:"status,omitempty" tf:"status,omitempty"`

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

	// The task type of the schedule. Possible values include LabVmsShutdownTask and LabVmAutoStart.
	TaskType *string `json:"taskType,omitempty" tf:"task_type,omitempty"`

	// The time zone ID (e.g. Pacific Standard time).
	TimeZoneID *string `json:"timeZoneId,omitempty" tf:"time_zone_id,omitempty"`

	// The properties of a weekly schedule. If the schedule occurs only some days of the week, specify the weekly recurrence. A weekly_recurrence block as defined below.
	WeeklyRecurrence []WeeklyRecurrenceInitParameters `json:"weeklyRecurrence,omitempty" tf:"weekly_recurrence,omitempty"`
}

func (*ScheduleInitParameters) DeepCopy added in v0.35.0

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

func (*ScheduleInitParameters) DeepCopyInto added in v0.35.0

func (in *ScheduleInitParameters) DeepCopyInto(out *ScheduleInitParameters)

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

type ScheduleList

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

ScheduleList contains a list of Schedules

func (*ScheduleList) DeepCopy

func (in *ScheduleList) DeepCopy() *ScheduleList

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

func (*ScheduleList) DeepCopyInto

func (in *ScheduleList) DeepCopyInto(out *ScheduleList)

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

func (*ScheduleList) DeepCopyObject

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

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

func (*ScheduleList) GetItems

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

GetItems of this ScheduleList.

type ScheduleNotificationSettingsInitParameters added in v0.35.0

type ScheduleNotificationSettingsInitParameters struct {

	// The status of the notification. Possible values are Enabled and Disabled. Defaults to Disabled
	Status *string `json:"status,omitempty" tf:"status,omitempty"`

	// Time in minutes before event at which notification will be sent.
	TimeInMinutes *float64 `json:"timeInMinutes,omitempty" tf:"time_in_minutes,omitempty"`

	// The webhook URL to which the notification will be sent.
	WebhookURL *string `json:"webhookUrl,omitempty" tf:"webhook_url,omitempty"`
}

func (*ScheduleNotificationSettingsInitParameters) DeepCopy added in v0.35.0

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

func (*ScheduleNotificationSettingsInitParameters) DeepCopyInto added in v0.35.0

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

type ScheduleNotificationSettingsObservation

type ScheduleNotificationSettingsObservation struct {

	// The status of the notification. Possible values are Enabled and Disabled. Defaults to Disabled
	Status *string `json:"status,omitempty" tf:"status,omitempty"`

	// Time in minutes before event at which notification will be sent.
	TimeInMinutes *float64 `json:"timeInMinutes,omitempty" tf:"time_in_minutes,omitempty"`

	// The webhook URL to which the notification will be sent.
	WebhookURL *string `json:"webhookUrl,omitempty" tf:"webhook_url,omitempty"`
}

func (*ScheduleNotificationSettingsObservation) DeepCopy

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

func (*ScheduleNotificationSettingsObservation) DeepCopyInto

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

type ScheduleNotificationSettingsParameters

type ScheduleNotificationSettingsParameters struct {

	// The status of the notification. Possible values are Enabled and Disabled. Defaults to Disabled
	// +kubebuilder:validation:Optional
	Status *string `json:"status,omitempty" tf:"status,omitempty"`

	// Time in minutes before event at which notification will be sent.
	// +kubebuilder:validation:Optional
	TimeInMinutes *float64 `json:"timeInMinutes,omitempty" tf:"time_in_minutes,omitempty"`

	// The webhook URL to which the notification will be sent.
	// +kubebuilder:validation:Optional
	WebhookURL *string `json:"webhookUrl,omitempty" tf:"webhook_url,omitempty"`
}

func (*ScheduleNotificationSettingsParameters) DeepCopy

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

func (*ScheduleNotificationSettingsParameters) DeepCopyInto

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

type ScheduleObservation

type ScheduleObservation struct {

	// The properties of a daily schedule. If the schedule occurs once each day of the week, specify the daily recurrence. A daily_recurrence block as defined below.
	DailyRecurrence []DailyRecurrenceObservation `json:"dailyRecurrence,omitempty" tf:"daily_recurrence,omitempty"`

	// The properties of an hourly schedule. If the schedule occurs multiple times a day, specify the hourly recurrence. A hourly_recurrence block as defined below.
	HourlyRecurrence []HourlyRecurrenceObservation `json:"hourlyRecurrence,omitempty" tf:"hourly_recurrence,omitempty"`

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

	// The name of the dev test lab. Changing this forces a new resource to be created.
	LabName *string `json:"labName,omitempty" tf:"lab_name,omitempty"`

	// The location where the schedule is created. Changing this forces a new resource to be created.
	Location *string `json:"location,omitempty" tf:"location,omitempty"`

	// The notification setting of a schedule. A notification_settings block as defined below.
	NotificationSettings []ScheduleNotificationSettingsObservation `json:"notificationSettings,omitempty" tf:"notification_settings,omitempty"`

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

	// The status of this schedule. Possible values are Enabled and Disabled. Defaults to Disabled.
	Status *string `json:"status,omitempty" tf:"status,omitempty"`

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

	// The task type of the schedule. Possible values include LabVmsShutdownTask and LabVmAutoStart.
	TaskType *string `json:"taskType,omitempty" tf:"task_type,omitempty"`

	// The time zone ID (e.g. Pacific Standard time).
	TimeZoneID *string `json:"timeZoneId,omitempty" tf:"time_zone_id,omitempty"`

	// The properties of a weekly schedule. If the schedule occurs only some days of the week, specify the weekly recurrence. A weekly_recurrence block as defined below.
	WeeklyRecurrence []WeeklyRecurrenceObservation `json:"weeklyRecurrence,omitempty" tf:"weekly_recurrence,omitempty"`
}

func (*ScheduleObservation) DeepCopy

func (in *ScheduleObservation) DeepCopy() *ScheduleObservation

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

func (*ScheduleObservation) DeepCopyInto

func (in *ScheduleObservation) DeepCopyInto(out *ScheduleObservation)

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

type ScheduleParameters

type ScheduleParameters struct {

	// The properties of a daily schedule. If the schedule occurs once each day of the week, specify the daily recurrence. A daily_recurrence block as defined below.
	// +kubebuilder:validation:Optional
	DailyRecurrence []DailyRecurrenceParameters `json:"dailyRecurrence,omitempty" tf:"daily_recurrence,omitempty"`

	// The properties of an hourly schedule. If the schedule occurs multiple times a day, specify the hourly recurrence. A hourly_recurrence block as defined below.
	// +kubebuilder:validation:Optional
	HourlyRecurrence []HourlyRecurrenceParameters `json:"hourlyRecurrence,omitempty" tf:"hourly_recurrence,omitempty"`

	// The name of the dev test lab. Changing this forces a new resource to be created.
	// +crossplane:generate:reference:type=github.com/upbound/provider-azure/apis/devtestlab/v1beta1.Lab
	// +kubebuilder:validation:Optional
	LabName *string `json:"labName,omitempty" tf:"lab_name,omitempty"`

	// Reference to a Lab in devtestlab to populate labName.
	// +kubebuilder:validation:Optional
	LabNameRef *v1.Reference `json:"labNameRef,omitempty" tf:"-"`

	// Selector for a Lab in devtestlab to populate labName.
	// +kubebuilder:validation:Optional
	LabNameSelector *v1.Selector `json:"labNameSelector,omitempty" tf:"-"`

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

	// The notification setting of a schedule. A notification_settings block as defined below.
	// +kubebuilder:validation:Optional
	NotificationSettings []ScheduleNotificationSettingsParameters `json:"notificationSettings,omitempty" tf:"notification_settings,omitempty"`

	// The name of the resource group in which to create the dev test lab schedule. 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 status of this schedule. Possible values are Enabled and Disabled. Defaults to Disabled.
	// +kubebuilder:validation:Optional
	Status *string `json:"status,omitempty" tf:"status,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 task type of the schedule. Possible values include LabVmsShutdownTask and LabVmAutoStart.
	// +kubebuilder:validation:Optional
	TaskType *string `json:"taskType,omitempty" tf:"task_type,omitempty"`

	// The time zone ID (e.g. Pacific Standard time).
	// +kubebuilder:validation:Optional
	TimeZoneID *string `json:"timeZoneId,omitempty" tf:"time_zone_id,omitempty"`

	// The properties of a weekly schedule. If the schedule occurs only some days of the week, specify the weekly recurrence. A weekly_recurrence block as defined below.
	// +kubebuilder:validation:Optional
	WeeklyRecurrence []WeeklyRecurrenceParameters `json:"weeklyRecurrence,omitempty" tf:"weekly_recurrence,omitempty"`
}

func (*ScheduleParameters) DeepCopy

func (in *ScheduleParameters) DeepCopy() *ScheduleParameters

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

func (*ScheduleParameters) DeepCopyInto

func (in *ScheduleParameters) DeepCopyInto(out *ScheduleParameters)

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

type ScheduleSpec

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

ScheduleSpec defines the desired state of Schedule

func (*ScheduleSpec) DeepCopy

func (in *ScheduleSpec) DeepCopy() *ScheduleSpec

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

func (*ScheduleSpec) DeepCopyInto

func (in *ScheduleSpec) DeepCopyInto(out *ScheduleSpec)

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

type ScheduleStatus

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

ScheduleStatus defines the observed state of Schedule.

func (*ScheduleStatus) DeepCopy

func (in *ScheduleStatus) DeepCopy() *ScheduleStatus

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

func (*ScheduleStatus) DeepCopyInto

func (in *ScheduleStatus) DeepCopyInto(out *ScheduleStatus)

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

type SubnetInitParameters added in v0.35.0

type SubnetInitParameters struct {

	// Can this subnet be used for creating Virtual Machines? Possible values are Allow, Default and Deny. Defaults to Allow.
	UseInVirtualMachineCreation *string `json:"useInVirtualMachineCreation,omitempty" tf:"use_in_virtual_machine_creation,omitempty"`

	// Can Virtual Machines in this Subnet use Public IP Addresses? Possible values are Allow, Default and Deny. Defaults to Allow.
	UsePublicIPAddress *string `json:"usePublicIpAddress,omitempty" tf:"use_public_ip_address,omitempty"`
}

func (*SubnetInitParameters) DeepCopy added in v0.35.0

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

func (*SubnetInitParameters) DeepCopyInto added in v0.35.0

func (in *SubnetInitParameters) DeepCopyInto(out *SubnetInitParameters)

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

type SubnetObservation

type SubnetObservation struct {

	// The name of the Subnet for this Virtual Network.
	Name *string `json:"name,omitempty" tf:"name,omitempty"`

	// Can this subnet be used for creating Virtual Machines? Possible values are Allow, Default and Deny. Defaults to Allow.
	UseInVirtualMachineCreation *string `json:"useInVirtualMachineCreation,omitempty" tf:"use_in_virtual_machine_creation,omitempty"`

	// Can Virtual Machines in this Subnet use Public IP Addresses? Possible values are Allow, Default and Deny. Defaults to Allow.
	UsePublicIPAddress *string `json:"usePublicIpAddress,omitempty" tf:"use_public_ip_address,omitempty"`
}

func (*SubnetObservation) DeepCopy

func (in *SubnetObservation) DeepCopy() *SubnetObservation

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

func (*SubnetObservation) DeepCopyInto

func (in *SubnetObservation) DeepCopyInto(out *SubnetObservation)

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

type SubnetParameters

type SubnetParameters struct {

	// Can this subnet be used for creating Virtual Machines? Possible values are Allow, Default and Deny. Defaults to Allow.
	// +kubebuilder:validation:Optional
	UseInVirtualMachineCreation *string `json:"useInVirtualMachineCreation,omitempty" tf:"use_in_virtual_machine_creation,omitempty"`

	// Can Virtual Machines in this Subnet use Public IP Addresses? Possible values are Allow, Default and Deny. Defaults to Allow.
	// +kubebuilder:validation:Optional
	UsePublicIPAddress *string `json:"usePublicIpAddress,omitempty" tf:"use_public_ip_address,omitempty"`
}

func (*SubnetParameters) DeepCopy

func (in *SubnetParameters) DeepCopy() *SubnetParameters

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

func (*SubnetParameters) DeepCopyInto

func (in *SubnetParameters) DeepCopyInto(out *SubnetParameters)

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

type VirtualNetwork

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

VirtualNetwork is the Schema for the VirtualNetworks API. Manages a Virtual Network within a DevTest Lab. +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 (*VirtualNetwork) ConvertFrom added in v1.2.0

func (tr *VirtualNetwork) ConvertFrom(srcRaw conversion.Hub) error

ConvertFrom converts from the hub type to the VirtualNetwork type.

func (*VirtualNetwork) ConvertTo added in v1.2.0

func (tr *VirtualNetwork) ConvertTo(dstRaw conversion.Hub) error

ConvertTo converts this VirtualNetwork to the hub type.

func (*VirtualNetwork) DeepCopy

func (in *VirtualNetwork) DeepCopy() *VirtualNetwork

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

func (*VirtualNetwork) DeepCopyInto

func (in *VirtualNetwork) DeepCopyInto(out *VirtualNetwork)

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

func (*VirtualNetwork) DeepCopyObject

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

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

func (*VirtualNetwork) GetCondition

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

GetCondition of this VirtualNetwork.

func (*VirtualNetwork) GetConnectionDetailsMapping

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

GetConnectionDetailsMapping for this VirtualNetwork

func (*VirtualNetwork) GetDeletionPolicy

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

GetDeletionPolicy of this VirtualNetwork.

func (*VirtualNetwork) GetID

func (tr *VirtualNetwork) GetID() string

GetID returns ID of underlying Terraform resource of this VirtualNetwork

func (*VirtualNetwork) GetInitParameters added in v0.35.0

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

GetInitParameters of this VirtualNetwork

func (*VirtualNetwork) GetManagementPolicies added in v0.35.0

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

GetManagementPolicies of this VirtualNetwork.

func (*VirtualNetwork) GetMergedParameters added in v0.40.0

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

GetInitParameters of this VirtualNetwork

func (*VirtualNetwork) GetObservation

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

GetObservation of this VirtualNetwork

func (*VirtualNetwork) GetParameters

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

GetParameters of this VirtualNetwork

func (*VirtualNetwork) GetProviderConfigReference

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

GetProviderConfigReference of this VirtualNetwork.

func (*VirtualNetwork) GetPublishConnectionDetailsTo

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

GetPublishConnectionDetailsTo of this VirtualNetwork.

func (*VirtualNetwork) GetTerraformResourceType

func (mg *VirtualNetwork) GetTerraformResourceType() string

GetTerraformResourceType returns Terraform resource type for this VirtualNetwork

func (*VirtualNetwork) GetTerraformSchemaVersion

func (tr *VirtualNetwork) GetTerraformSchemaVersion() int

GetTerraformSchemaVersion returns the associated Terraform schema version

func (*VirtualNetwork) GetWriteConnectionSecretToReference

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

GetWriteConnectionSecretToReference of this VirtualNetwork.

func (*VirtualNetwork) LateInitialize

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

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

func (*VirtualNetwork) ResolveReferences

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

ResolveReferences of this VirtualNetwork.

func (*VirtualNetwork) SetConditions

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

SetConditions of this VirtualNetwork.

func (*VirtualNetwork) SetDeletionPolicy

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

SetDeletionPolicy of this VirtualNetwork.

func (*VirtualNetwork) SetManagementPolicies added in v0.35.0

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

SetManagementPolicies of this VirtualNetwork.

func (*VirtualNetwork) SetObservation

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

SetObservation for this VirtualNetwork

func (*VirtualNetwork) SetParameters

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

SetParameters for this VirtualNetwork

func (*VirtualNetwork) SetProviderConfigReference

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

SetProviderConfigReference of this VirtualNetwork.

func (*VirtualNetwork) SetPublishConnectionDetailsTo

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

SetPublishConnectionDetailsTo of this VirtualNetwork.

func (*VirtualNetwork) SetWriteConnectionSecretToReference

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

SetWriteConnectionSecretToReference of this VirtualNetwork.

type VirtualNetworkInitParameters added in v0.35.0

type VirtualNetworkInitParameters struct {

	// A description for the Virtual Network.
	Description *string `json:"description,omitempty" tf:"description,omitempty"`

	// Specifies the name of the Dev Test Lab in which the Virtual Network should be created. Changing this forces a new resource to be created.
	// +crossplane:generate:reference:type=github.com/upbound/provider-azure/apis/devtestlab/v1beta1.Lab
	LabName *string `json:"labName,omitempty" tf:"lab_name,omitempty"`

	// Reference to a Lab in devtestlab to populate labName.
	// +kubebuilder:validation:Optional
	LabNameRef *v1.Reference `json:"labNameRef,omitempty" tf:"-"`

	// Selector for a Lab in devtestlab to populate labName.
	// +kubebuilder:validation:Optional
	LabNameSelector *v1.Selector `json:"labNameSelector,omitempty" tf:"-"`

	// Specifies the name of the Dev Test Virtual Network. Changing this forces a new resource to be created.
	Name *string `json:"name,omitempty" tf:"name,omitempty"`

	// The name of the resource group in which the Dev Test Lab resource exists. Changing this forces a new resource to be created.
	// +crossplane:generate:reference:type=github.com/upbound/provider-azure/apis/azure/v1beta1.ResourceGroup
	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 subnet block as defined below.
	Subnet []SubnetInitParameters `json:"subnet,omitempty" tf:"subnet,omitempty"`

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

func (*VirtualNetworkInitParameters) DeepCopy added in v0.35.0

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

func (*VirtualNetworkInitParameters) DeepCopyInto added in v0.35.0

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

type VirtualNetworkList

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

VirtualNetworkList contains a list of VirtualNetworks

func (*VirtualNetworkList) DeepCopy

func (in *VirtualNetworkList) DeepCopy() *VirtualNetworkList

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

func (*VirtualNetworkList) DeepCopyInto

func (in *VirtualNetworkList) DeepCopyInto(out *VirtualNetworkList)

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

func (*VirtualNetworkList) DeepCopyObject

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

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

func (*VirtualNetworkList) GetItems

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

GetItems of this VirtualNetworkList.

type VirtualNetworkObservation

type VirtualNetworkObservation struct {

	// A description for the Virtual Network.
	Description *string `json:"description,omitempty" tf:"description,omitempty"`

	// The ID of the Dev Test Virtual Network.
	ID *string `json:"id,omitempty" tf:"id,omitempty"`

	// Specifies the name of the Dev Test Lab in which the Virtual Network should be created. Changing this forces a new resource to be created.
	LabName *string `json:"labName,omitempty" tf:"lab_name,omitempty"`

	// Specifies the name of the Dev Test Virtual Network. Changing this forces a new resource to be created.
	Name *string `json:"name,omitempty" tf:"name,omitempty"`

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

	// A subnet block as defined below.
	Subnet []SubnetObservation `json:"subnet,omitempty" tf:"subnet,omitempty"`

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

	// The unique immutable identifier of the Dev Test Virtual Network.
	UniqueIdentifier *string `json:"uniqueIdentifier,omitempty" tf:"unique_identifier,omitempty"`
}

func (*VirtualNetworkObservation) DeepCopy

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

func (*VirtualNetworkObservation) DeepCopyInto

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

type VirtualNetworkParameters

type VirtualNetworkParameters struct {

	// A description for the Virtual Network.
	// +kubebuilder:validation:Optional
	Description *string `json:"description,omitempty" tf:"description,omitempty"`

	// Specifies the name of the Dev Test Lab in which the Virtual Network should be created. Changing this forces a new resource to be created.
	// +crossplane:generate:reference:type=github.com/upbound/provider-azure/apis/devtestlab/v1beta1.Lab
	// +kubebuilder:validation:Optional
	LabName *string `json:"labName,omitempty" tf:"lab_name,omitempty"`

	// Reference to a Lab in devtestlab to populate labName.
	// +kubebuilder:validation:Optional
	LabNameRef *v1.Reference `json:"labNameRef,omitempty" tf:"-"`

	// Selector for a Lab in devtestlab to populate labName.
	// +kubebuilder:validation:Optional
	LabNameSelector *v1.Selector `json:"labNameSelector,omitempty" tf:"-"`

	// Specifies the name of the Dev Test Virtual Network. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	Name *string `json:"name,omitempty" tf:"name,omitempty"`

	// The name of the resource group in which the Dev Test Lab resource 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:"-"`

	// A subnet block as defined below.
	// +kubebuilder:validation:Optional
	Subnet []SubnetParameters `json:"subnet,omitempty" tf:"subnet,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 (*VirtualNetworkParameters) DeepCopy

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

func (*VirtualNetworkParameters) DeepCopyInto

func (in *VirtualNetworkParameters) DeepCopyInto(out *VirtualNetworkParameters)

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

type VirtualNetworkSpec

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

VirtualNetworkSpec defines the desired state of VirtualNetwork

func (*VirtualNetworkSpec) DeepCopy

func (in *VirtualNetworkSpec) DeepCopy() *VirtualNetworkSpec

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

func (*VirtualNetworkSpec) DeepCopyInto

func (in *VirtualNetworkSpec) DeepCopyInto(out *VirtualNetworkSpec)

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

type VirtualNetworkStatus

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

VirtualNetworkStatus defines the observed state of VirtualNetwork.

func (*VirtualNetworkStatus) DeepCopy

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

func (*VirtualNetworkStatus) DeepCopyInto

func (in *VirtualNetworkStatus) DeepCopyInto(out *VirtualNetworkStatus)

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

type WeeklyRecurrenceInitParameters added in v0.35.0

type WeeklyRecurrenceInitParameters struct {

	// The time when the schedule takes effect.
	Time *string `json:"time,omitempty" tf:"time,omitempty"`

	// A list of days that this schedule takes effect . Possible values include Monday, Tuesday, Wednesday, Thursday, Friday, Saturday and Sunday.
	WeekDays []*string `json:"weekDays,omitempty" tf:"week_days,omitempty"`
}

func (*WeeklyRecurrenceInitParameters) DeepCopy added in v0.35.0

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

func (*WeeklyRecurrenceInitParameters) DeepCopyInto added in v0.35.0

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

type WeeklyRecurrenceObservation

type WeeklyRecurrenceObservation struct {

	// The time when the schedule takes effect.
	Time *string `json:"time,omitempty" tf:"time,omitempty"`

	// A list of days that this schedule takes effect . Possible values include Monday, Tuesday, Wednesday, Thursday, Friday, Saturday and Sunday.
	WeekDays []*string `json:"weekDays,omitempty" tf:"week_days,omitempty"`
}

func (*WeeklyRecurrenceObservation) DeepCopy

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

func (*WeeklyRecurrenceObservation) DeepCopyInto

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

type WeeklyRecurrenceParameters

type WeeklyRecurrenceParameters struct {

	// The time when the schedule takes effect.
	// +kubebuilder:validation:Optional
	Time *string `json:"time" tf:"time,omitempty"`

	// A list of days that this schedule takes effect . Possible values include Monday, Tuesday, Wednesday, Thursday, Friday, Saturday and Sunday.
	// +kubebuilder:validation:Optional
	WeekDays []*string `json:"weekDays,omitempty" tf:"week_days,omitempty"`
}

func (*WeeklyRecurrenceParameters) DeepCopy

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

func (*WeeklyRecurrenceParameters) 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.galleryImageReference) || (has(self.initProvider) && has(self.initProvider.galleryImageReference))",message="spec.forProvider.galleryImageReference is a required parameter"
	// +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.location) || (has(self.initProvider) && has(self.initProvider.location))",message="spec.forProvider.location is a required parameter"
	// +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.name) || (has(self.initProvider) && has(self.initProvider.name))",message="spec.forProvider.name is a required parameter"
	// +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.passwordSecretRef)",message="spec.forProvider.passwordSecretRef 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"
	// +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.storageType) || (has(self.initProvider) && has(self.initProvider.storageType))",message="spec.forProvider.storageType is a required parameter"
	// +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.username) || (has(self.initProvider) && has(self.initProvider.username))",message="spec.forProvider.username 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 within a Dev Test Lab. +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) ConvertFrom added in v1.2.0

func (tr *WindowsVirtualMachine) ConvertFrom(srcRaw conversion.Hub) error

ConvertFrom converts from the hub type to the WindowsVirtualMachine type.

func (*WindowsVirtualMachine) ConvertTo added in v1.2.0

func (tr *WindowsVirtualMachine) ConvertTo(dstRaw conversion.Hub) error

ConvertTo converts this WindowsVirtualMachine to the hub type.

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) 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 WindowsVirtualMachineGalleryImageReferenceInitParameters added in v0.35.0

type WindowsVirtualMachineGalleryImageReferenceInitParameters struct {

	// The Offer of the Gallery Image. Changing this forces a new resource to be created.
	Offer *string `json:"offer,omitempty" tf:"offer,omitempty"`

	// The Publisher of the Gallery Image. Changing this forces a new resource to be created.
	Publisher *string `json:"publisher,omitempty" tf:"publisher,omitempty"`

	// The SKU of the Gallery Image. Changing this forces a new resource to be created.
	Sku *string `json:"sku,omitempty" tf:"sku,omitempty"`

	// The Version of the Gallery Image. Changing this forces a new resource to be created.
	Version *string `json:"version,omitempty" tf:"version,omitempty"`
}

func (*WindowsVirtualMachineGalleryImageReferenceInitParameters) DeepCopy added in v0.35.0

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

func (*WindowsVirtualMachineGalleryImageReferenceInitParameters) DeepCopyInto added in v0.35.0

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

type WindowsVirtualMachineGalleryImageReferenceObservation

type WindowsVirtualMachineGalleryImageReferenceObservation struct {

	// The Offer of the Gallery Image. Changing this forces a new resource to be created.
	Offer *string `json:"offer,omitempty" tf:"offer,omitempty"`

	// The Publisher of the Gallery Image. Changing this forces a new resource to be created.
	Publisher *string `json:"publisher,omitempty" tf:"publisher,omitempty"`

	// The SKU of the Gallery Image. Changing this forces a new resource to be created.
	Sku *string `json:"sku,omitempty" tf:"sku,omitempty"`

	// The Version of the Gallery Image. Changing this forces a new resource to be created.
	Version *string `json:"version,omitempty" tf:"version,omitempty"`
}

func (*WindowsVirtualMachineGalleryImageReferenceObservation) DeepCopy

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

func (*WindowsVirtualMachineGalleryImageReferenceObservation) DeepCopyInto

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

type WindowsVirtualMachineGalleryImageReferenceParameters

type WindowsVirtualMachineGalleryImageReferenceParameters struct {

	// The Offer of the Gallery Image. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	Offer *string `json:"offer" tf:"offer,omitempty"`

	// The Publisher of the Gallery Image. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	Publisher *string `json:"publisher" tf:"publisher,omitempty"`

	// The SKU of the Gallery Image. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	Sku *string `json:"sku" tf:"sku,omitempty"`

	// The Version of the Gallery Image. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	Version *string `json:"version" tf:"version,omitempty"`
}

func (*WindowsVirtualMachineGalleryImageReferenceParameters) DeepCopy

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

func (*WindowsVirtualMachineGalleryImageReferenceParameters) DeepCopyInto

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

type WindowsVirtualMachineInboundNATRuleInitParameters added in v0.35.0

type WindowsVirtualMachineInboundNATRuleInitParameters struct {

	// The Backend Port associated with this NAT Rule. Changing this forces a new resource to be created.
	BackendPort *float64 `json:"backendPort,omitempty" tf:"backend_port,omitempty"`

	// The Protocol used for this NAT Rule. Possible values are Tcp and Udp.
	Protocol *string `json:"protocol,omitempty" tf:"protocol,omitempty"`
}

func (*WindowsVirtualMachineInboundNATRuleInitParameters) DeepCopy added in v0.35.0

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

func (*WindowsVirtualMachineInboundNATRuleInitParameters) DeepCopyInto added in v0.35.0

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

type WindowsVirtualMachineInboundNATRuleObservation

type WindowsVirtualMachineInboundNATRuleObservation struct {

	// The Backend Port associated with this NAT Rule. Changing this forces a new resource to be created.
	BackendPort *float64 `json:"backendPort,omitempty" tf:"backend_port,omitempty"`

	// The frontend port associated with this Inbound NAT Rule.
	FrontendPort *float64 `json:"frontendPort,omitempty" tf:"frontend_port,omitempty"`

	// The Protocol used for this NAT Rule. Possible values are Tcp and Udp.
	Protocol *string `json:"protocol,omitempty" tf:"protocol,omitempty"`
}

func (*WindowsVirtualMachineInboundNATRuleObservation) DeepCopy

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

func (*WindowsVirtualMachineInboundNATRuleObservation) DeepCopyInto

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

type WindowsVirtualMachineInboundNATRuleParameters

type WindowsVirtualMachineInboundNATRuleParameters struct {

	// The Backend Port associated with this NAT Rule. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	BackendPort *float64 `json:"backendPort" tf:"backend_port,omitempty"`

	// The Protocol used for this NAT Rule. Possible values are Tcp and Udp.
	// +kubebuilder:validation:Optional
	Protocol *string `json:"protocol" tf:"protocol,omitempty"`
}

func (*WindowsVirtualMachineInboundNATRuleParameters) DeepCopy

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

func (*WindowsVirtualMachineInboundNATRuleParameters) 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 {

	// Can this Virtual Machine be claimed by users? Defaults to true.
	AllowClaim *bool `json:"allowClaim,omitempty" tf:"allow_claim,omitempty"`

	// Should the Virtual Machine be created without a Public IP Address? Changing this forces a new resource to be created.
	DisallowPublicIPAddress *bool `json:"disallowPublicIpAddress,omitempty" tf:"disallow_public_ip_address,omitempty"`

	// A gallery_image_reference block as defined below.
	GalleryImageReference []WindowsVirtualMachineGalleryImageReferenceInitParameters `json:"galleryImageReference,omitempty" tf:"gallery_image_reference,omitempty"`

	// One or more inbound_nat_rule blocks as defined below. Changing this forces a new resource to be created.
	InboundNATRule []WindowsVirtualMachineInboundNATRuleInitParameters `json:"inboundNatRule,omitempty" tf:"inbound_nat_rule,omitempty"`

	// Specifies the name of the Dev Test Lab in which the Virtual Machine should be created. Changing this forces a new resource to be created.
	// +crossplane:generate:reference:type=github.com/upbound/provider-azure/apis/devtestlab/v1beta1.Lab
	LabName *string `json:"labName,omitempty" tf:"lab_name,omitempty"`

	// Reference to a Lab in devtestlab to populate labName.
	// +kubebuilder:validation:Optional
	LabNameRef *v1.Reference `json:"labNameRef,omitempty" tf:"-"`

	// Selector for a Lab in devtestlab to populate labName.
	// +kubebuilder:validation:Optional
	LabNameSelector *v1.Selector `json:"labNameSelector,omitempty" tf:"-"`

	// The name of a Subnet within the Dev Test Virtual Network where this machine should exist. Changing this forces a new resource to be created.
	// +crossplane:generate:reference:type=github.com/upbound/provider-azure/apis/network/v1beta1.Subnet
	LabSubnetName *string `json:"labSubnetName,omitempty" tf:"lab_subnet_name,omitempty"`

	// Reference to a Subnet in network to populate labSubnetName.
	// +kubebuilder:validation:Optional
	LabSubnetNameRef *v1.Reference `json:"labSubnetNameRef,omitempty" tf:"-"`

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

	// The ID of the Dev Test Virtual Network where this Virtual Machine should be created. Changing this forces a new resource to be created.
	// +crossplane:generate:reference:type=github.com/upbound/provider-azure/apis/devtestlab/v1beta1.VirtualNetwork
	// +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractResourceID()
	LabVirtualNetworkID *string `json:"labVirtualNetworkId,omitempty" tf:"lab_virtual_network_id,omitempty"`

	// Reference to a VirtualNetwork in devtestlab to populate labVirtualNetworkId.
	// +kubebuilder:validation:Optional
	LabVirtualNetworkIDRef *v1.Reference `json:"labVirtualNetworkIdRef,omitempty" tf:"-"`

	// Selector for a VirtualNetwork in devtestlab to populate labVirtualNetworkId.
	// +kubebuilder:validation:Optional
	LabVirtualNetworkIDSelector *v1.Selector `json:"labVirtualNetworkIdSelector,omitempty" tf:"-"`

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

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

	// Any notes about the Virtual Machine.
	Notes *string `json:"notes,omitempty" tf:"notes,omitempty"`

	// The name of the resource group in which the Dev Test Lab resource exists. Changing this forces a new resource to be created.
	// +crossplane:generate:reference:type=github.com/upbound/provider-azure/apis/azure/v1beta1.ResourceGroup
	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 Machine Size to use for this Virtual Machine, such as Standard_F2. Changing this forces a new resource to be created.
	Size *string `json:"size,omitempty" tf:"size,omitempty"`

	// The type of Storage to use on this Virtual Machine. Possible values are Standard and Premium. Changing this forces a new resource to be created.
	StorageType *string `json:"storageType,omitempty" tf:"storage_type,omitempty"`

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

	// The Username associated with the local administrator on this Virtual Machine. Changing this forces a new resource to be created.
	Username *string `json:"username,omitempty" tf:"username,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 {

	// Can this Virtual Machine be claimed by users? Defaults to true.
	AllowClaim *bool `json:"allowClaim,omitempty" tf:"allow_claim,omitempty"`

	// Should the Virtual Machine be created without a Public IP Address? Changing this forces a new resource to be created.
	DisallowPublicIPAddress *bool `json:"disallowPublicIpAddress,omitempty" tf:"disallow_public_ip_address,omitempty"`

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

	// A gallery_image_reference block as defined below.
	GalleryImageReference []WindowsVirtualMachineGalleryImageReferenceObservation `json:"galleryImageReference,omitempty" tf:"gallery_image_reference,omitempty"`

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

	// One or more inbound_nat_rule blocks as defined below. Changing this forces a new resource to be created.
	InboundNATRule []WindowsVirtualMachineInboundNATRuleObservation `json:"inboundNatRule,omitempty" tf:"inbound_nat_rule,omitempty"`

	// Specifies the name of the Dev Test Lab in which the Virtual Machine should be created. Changing this forces a new resource to be created.
	LabName *string `json:"labName,omitempty" tf:"lab_name,omitempty"`

	// The name of a Subnet within the Dev Test Virtual Network where this machine should exist. Changing this forces a new resource to be created.
	LabSubnetName *string `json:"labSubnetName,omitempty" tf:"lab_subnet_name,omitempty"`

	// The ID of the Dev Test Virtual Network where this Virtual Machine should be created. Changing this forces a new resource to be created.
	LabVirtualNetworkID *string `json:"labVirtualNetworkId,omitempty" tf:"lab_virtual_network_id,omitempty"`

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

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

	// Any notes about the Virtual Machine.
	Notes *string `json:"notes,omitempty" tf:"notes,omitempty"`

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

	// The Machine Size to use for this Virtual Machine, such as Standard_F2. Changing this forces a new resource to be created.
	Size *string `json:"size,omitempty" tf:"size,omitempty"`

	// The type of Storage to use on this Virtual Machine. Possible values are Standard and Premium. Changing this forces a new resource to be created.
	StorageType *string `json:"storageType,omitempty" tf:"storage_type,omitempty"`

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

	// The unique immutable identifier of the Virtual Machine.
	UniqueIdentifier *string `json:"uniqueIdentifier,omitempty" tf:"unique_identifier,omitempty"`

	// The Username associated with the local administrator on this Virtual Machine. Changing this forces a new resource to be created.
	Username *string `json:"username,omitempty" tf:"username,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 WindowsVirtualMachineParameters

type WindowsVirtualMachineParameters struct {

	// Can this Virtual Machine be claimed by users? Defaults to true.
	// +kubebuilder:validation:Optional
	AllowClaim *bool `json:"allowClaim,omitempty" tf:"allow_claim,omitempty"`

	// Should the Virtual Machine be created without a Public IP Address? Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	DisallowPublicIPAddress *bool `json:"disallowPublicIpAddress,omitempty" tf:"disallow_public_ip_address,omitempty"`

	// A gallery_image_reference block as defined below.
	// +kubebuilder:validation:Optional
	GalleryImageReference []WindowsVirtualMachineGalleryImageReferenceParameters `json:"galleryImageReference,omitempty" tf:"gallery_image_reference,omitempty"`

	// One or more inbound_nat_rule blocks as defined below. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	InboundNATRule []WindowsVirtualMachineInboundNATRuleParameters `json:"inboundNatRule,omitempty" tf:"inbound_nat_rule,omitempty"`

	// Specifies the name of the Dev Test Lab in which the Virtual Machine should be created. Changing this forces a new resource to be created.
	// +crossplane:generate:reference:type=github.com/upbound/provider-azure/apis/devtestlab/v1beta1.Lab
	// +kubebuilder:validation:Optional
	LabName *string `json:"labName,omitempty" tf:"lab_name,omitempty"`

	// Reference to a Lab in devtestlab to populate labName.
	// +kubebuilder:validation:Optional
	LabNameRef *v1.Reference `json:"labNameRef,omitempty" tf:"-"`

	// Selector for a Lab in devtestlab to populate labName.
	// +kubebuilder:validation:Optional
	LabNameSelector *v1.Selector `json:"labNameSelector,omitempty" tf:"-"`

	// The name of a Subnet within the Dev Test Virtual Network where this machine should exist. Changing this forces a new resource to be created.
	// +crossplane:generate:reference:type=github.com/upbound/provider-azure/apis/network/v1beta1.Subnet
	// +kubebuilder:validation:Optional
	LabSubnetName *string `json:"labSubnetName,omitempty" tf:"lab_subnet_name,omitempty"`

	// Reference to a Subnet in network to populate labSubnetName.
	// +kubebuilder:validation:Optional
	LabSubnetNameRef *v1.Reference `json:"labSubnetNameRef,omitempty" tf:"-"`

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

	// The ID of the Dev Test Virtual Network where this Virtual Machine should be created. Changing this forces a new resource to be created.
	// +crossplane:generate:reference:type=github.com/upbound/provider-azure/apis/devtestlab/v1beta1.VirtualNetwork
	// +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractResourceID()
	// +kubebuilder:validation:Optional
	LabVirtualNetworkID *string `json:"labVirtualNetworkId,omitempty" tf:"lab_virtual_network_id,omitempty"`

	// Reference to a VirtualNetwork in devtestlab to populate labVirtualNetworkId.
	// +kubebuilder:validation:Optional
	LabVirtualNetworkIDRef *v1.Reference `json:"labVirtualNetworkIdRef,omitempty" tf:"-"`

	// Selector for a VirtualNetwork in devtestlab to populate labVirtualNetworkId.
	// +kubebuilder:validation:Optional
	LabVirtualNetworkIDSelector *v1.Selector `json:"labVirtualNetworkIdSelector,omitempty" tf:"-"`

	// Specifies the supported Azure location where the Dev Test Lab 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 Dev Test Machine. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	Name *string `json:"name,omitempty" tf:"name,omitempty"`

	// Any notes about the Virtual Machine.
	// +kubebuilder:validation:Optional
	Notes *string `json:"notes,omitempty" tf:"notes,omitempty"`

	// The Password associated with the username used to login to this Virtual Machine. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	PasswordSecretRef v1.SecretKeySelector `json:"passwordSecretRef" tf:"-"`

	// The name of the resource group in which the Dev Test Lab resource 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:"-"`

	// The Machine Size to use for this Virtual Machine, such as Standard_F2. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	Size *string `json:"size,omitempty" tf:"size,omitempty"`

	// The type of Storage to use on this Virtual Machine. Possible values are Standard and Premium. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	StorageType *string `json:"storageType,omitempty" tf:"storage_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 Username associated with the local administrator on this Virtual Machine. Changing this forces a new resource to be created.
	// +kubebuilder:validation:Optional
	Username *string `json:"username,omitempty" tf:"username,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 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.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL